写点什么

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:007898

评论

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

解读数仓中的数据对象及相关关系

华为云开发者联盟

数据库 后端 华为云 数据对象 12 月 PK 榜

大数据培训程序员工作前景如何

小谷哥

大数据培训学习程序员还好找吗

小谷哥

编译器优化丨Cache优化

华为云开发者联盟

后端 开发 华为云 12 月 PK 榜

白嫖GitHub Pages,轻松搭建个人博客

LigaAI

Hexo GitHub Pages 个人博客 个人网站 12 月 PK 榜

TiDB在科捷物流神州金库核心系统的应用与实践

TiDB 社区干货传送门

迁移 实践案例 HTAP 场景实践 OLTP 场景实践

直播预告|PostgreSQL 技术内幕(四)执行引擎之Portal

酷克数据HashData

三翼鸟,用两年开启下一个十年

脑极体

在一次又一次的失败中,我总结了这份万字的《MySQL性能调优笔记》

钟奕礼

Java 程序员 java面试 java编程

云原生应用的最小特权原则

HummerCloud

k8s rbac 云原生安全

前端培训学习程序员如何提高解决问题的能力

小谷哥

【11.25-12.02】写作社区优秀技术博文回顾

InfoQ写作社区官方

热门活动

国内主流商业智能BI工具剖析

流量猫猫头

大数据

React 之元素与组件的区别

冴羽

JavaScript react.js 前端 前端框架 React

刘德华在线演唱会,火山引擎边缘云助力打造极致视频直播体验

火山引擎边缘云

云原生 边缘计算 节点 火山引擎边缘计算

火山引擎DataTester揭秘:字节如何用A/B测试,解决增长问题的?

字节跳动数据平台

大数据 AB testing实战 12 月 PK 榜

架构实战营模块1第1课 - 什么是架构,你理解对了么

净意

架构实战营

云小课|基于华为云WAF的日志运维分析,构筑设备安全的城墙

华为云开发者联盟

后端 华为云 waf 12 月 PK 榜

从React源码分析看useEffect

goClient1992

React

星环科技数据中台解决方案,助力某政府机构建设新型智慧城市

星环科技

一张「有想法」的表单,玩出线上填表新花样

爱科技的水月

App 长登录思考与实现part2

石君

App 信息安全 认证

一线大厂为什么面试必问分布式?

钟奕礼

Java 程序员 java面试 java编程

技术内幕 | 阿里云EMR StarRocks 极速数据湖分析

StarRocks

#数据库

【JUC】交换器Exchanger详解

JAVA旭阳

Java JUC

java培训怎么学习才好?

小谷哥

前端培训没有基础应该怎么学习

小谷哥

手把手教你成为荣耀开发者:账户结算操作指南

荣耀开发者服务平台

android 开发者 手机 荣耀 honor

奇点云DataSimba R4.5发布关键更新,做到“可大可小可观测”

奇点云

别再被小程序全页变灰给坑了

FE情报局

小程序 前端

龙蜥社区 11 月运营大事件回顾

OpenAnolis小助手

活动 生态 龙蜥社区 11月 运营月报

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