写点什么

Cloudflare 的 Kafka 之旅:万亿规模消息处理经验分享

作者:Nsikan Essien

  • 2023-04-30
    北京
  • 本文字数:818 字

    阅读完需:约 3 分钟

Cloudflare的Kafka之旅:万亿规模消息处理经验分享

在伦敦 QCon 大会上,Cloudflare高级系统工程师Andrea Medda和工程经理Matt Boyle分享了他们的平台服务团队在使用Apache Kafka来处理万亿规模的消息方面得到的经验教训。


Boyle 首先概述了 Cloudflare 需要解决的问题——提供自己的私有云和公共云服务,以及随着业务需求的增长而出现的团队耦合所带来的运营挑战。接着,他介绍了他们是如何将 Apache Kafka 作为他们的消息总线的。



Boyle 说,虽然消息总线模式解耦了微服务之间的负载,但由于 schema 是非结构化的,所以服务仍然是紧密耦合的。为了解决这个问题,他们将消息格式从JSON转成了Protobuf,并构建了一个客户端库,在发布消息之前对消息进行验证。



随着越来越多的团队开始采用 Apache Kafka,他们开发了一个连接器框架,让团队可以更容易在 Apache Kafka 和其他系统之间传输数据,并在传输过程中转换消息。



在疫情期间,随着 Cloudflare 系统负载的增加,他们发现他们的一个关键用户出现了瓶颈,已触及其服务水平协议(SLA)。Medda 分享了他们为了找到问题的根源,不得不使用来自Open Telemetry生态系统的工具来丰富他们的 SDK,以获得更好的跨堆栈交互可见性。



Medda 继续强调,他们 SDK 的成功带来了更多的内部用户,这催生了对更好的文档和ChatOps支持形式的需求。


Medda 总结了他们获得的主要的经验教训:


  • 在为 Apache Kafka 提供开发人员工具时,在高度可配置和简单标准化方法之间取得平衡;

  • 选择简单而严格的 1 对 1 契约接口,确保最大限度地了解主题及其使用情况;

  • 在开发工具指标上投入,让问题可以更容易地被发现;

  • 为应用程序开发人员提供清晰的模式文档,确保他们在采用和使用 Apache Kafka 方面保持一致性。


最后,Boyle 分享了一款叫作 Gaia 的内部产品,可以根据 Cloudflare 的最佳实践一键创建服务。



原文链接

https://www.infoq.com/news/2023/04/cloudflare-kafka-lessons-learned/


相关阅读:

使用 Strimzi 将 Kafka 和 Debezium 迁移到 Kubernetes

使用 Strimzi 提高 Kafka 集群的安全性

Kafka Streams 与 Quarkus:实时处理事件

2023-04-30 08:007983

评论

发布
暂无评论
发现更多内容

MatrixOne从入门到实践03——部署MatrixOne

MatrixOrigin

MatrixOrigin MatrixOne

「风控算法服务平台」高性能在线推理服务设计与实现

京东科技开发者

Python 数据 高性能 风控 风险控制

阿里技术风险与效能部负责人张瓅玶:阿里集团深度用云实践

云布道师

云计算

工程团队如何合理地管理数据库访问

Bytebase

DevOps 运维 dba 数据库管理工具 删库保护

avm 开发 APP 怎么设置字体

YonBuilder低代码开发平台

从流程驱动到数据驱动 银行业数据平台架构的演进

酷克数据HashData

算法基础:单链表图解及模板总结

timerring

算法 11月月更 单链表

Java对象拷贝原理剖析及最佳实践

京东科技开发者

Java Apache 编程 对象拷贝 srping

直播预约|Flink + StarRocks 实时数据分析新范式

StarRocks

数据库

上海 Meetup | 一键获取 11 大云原生热门开源项目技术分享入场券

阿里巴巴云原生

阿里云 开源 容器 微服务 云原生

看完这篇SpringBoot让我在阿里成功涨薪40%,感谢

钟奕礼

Java java程序员 java面试 java编程

SREWorks 数智服务尝鲜,你的数据准备好了吗?

阿里云大数据AI技术

大数据 运维 数据 十一月月更

OpenHarmony 3.2 Beta多媒体系列——音视频播放gstreamer

OpenHarmony开发者

OpenHarmony

MatrixOne从入门到实践02——源码编译

MatrixOrigin

MatrixOrigin MatrixOne

深入浅出DDD编程

百度Geek说

架构 后端 领域驱动设计

HarmonyOS 3重磅版本更新,Mate Xs 2等更多设备支持超级中转站!

极客天地

一个漏测Bug能让你想到多少?

得物技术

测试 测试框架 bug修复 漏洞检测 测试技术

创云融达基于 Curve 块存储的智慧税务场景实践

网易数帆

开源 分布式存储 Ceph curve

如何用科学的方法“撞大运”? | 学点运气

赵新龙

CTO 创新 与运气竞争

AR手势识别交互,让应用更加“得心应手”

HarmonyOS SDK

HMS Core

MASA Framework 事件总线 - 进程内事件总线

MASA技术团队

Framework MASA Framewrok MASA

前后端结合解决Excel海量公式计算的性能问题

葡萄城技术团队

前端 性能 Excel

低代码引擎半岁啦,来跟大家唠唠嗑...

阿里巴巴终端技术

前端 低代码

使用keytool生成Tomcat证书

源字节1号

VoneDAO助力元宇宙生态治理,加速组织数字化转型

旺链科技

区块链 产业区块链 DAO

分布式数据库Greenplum基本原理和使用

价投小邱

数据库 分布式数据库 greenplum

如何给 Fiori Elements 应用添加自定义按钮

汪子熙

前端开发 web开发 Fiori SAP UI5 11月月更

MatrixOne从入门到实践01——初识MatrixOne

MatrixOrigin

MatrixOrigin MatrixOne

先聊聊「堆栈」,再聊聊「逃逸分析」。Let’s Go!

王中阳Go

Go golang 逃逸分析 内存分配 11月月更

Cloudflare的Kafka之旅:万亿规模消息处理经验分享_语言 & 开发_InfoQ精选文章