硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

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

评论

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

SPARK 应用如何快速应对 LOG4J 的系列安全漏洞

明哥的IT随笔

spark CDH

爆测一周!22年必看最细致代码托管工具测评

阿里云云效

阿里云 云原生 代码管理 代码托管 Codeup

研效优化实践:WeTest提效测试

WeTest

详解 HDFS 底层交互原理

五分钟学大数据

hdfs 1月月更

中国AIOps们,你们究竟是在骗谁?

观测观测

AIOPS

在线XML转HTML工具

入门小站

工具

【云成本】降低云成本三大技巧你知道吗?

行云管家

云计算 企业上云 云成本

netty系列之:channel和channelGroup

程序那些事

Java Netty 程序那些事 1月日更

视频智能生产及内容分析应用工具开源了!​

百度大脑

人工智能

线程的生命周期,真的没那么简单

华为云开发者联盟

Java 线程 生命周期 编程语言线程

PK体系“配齐”!亚信科技数据库与麒麟软件OS、飞腾CPU完成产品适配

亚信AntDB数据库

AntDB 亚信科技

Committer 郭吉伟专访:做开源不是搞慈善,用开源也不是薅羊毛

Apache Pulsar

开源 架构 云原生 中间件 Apache Pulsar

基于 PTS 压测轻松玩转问题诊断

阿里巴巴云原生

阿里云 云原生 压测 问题 PTS

老牌安全厂商海泰方圆加入龙蜥社区

OpenAnolis小助手

Linux 开源 社群运营

易用好用的云管平台看这里!行云管家杠杠的!

行云管家

云计算 企业上云 混合云 云管平台

技术干货 | NeCodeGen:基于 clang 的源到源转译工具

网易云信

前端 Clang

跟着源码学IM(十):基于Netty,搭建高性能IM集群(含技术思路+源码)

JackJiang

Netty 即时通讯 IM im架构设计

APP违法使用个人信息?不用怕,华为云VSS为你保驾护航

华为云开发者联盟

移动应用 安全 漏洞 隐私合规 华为云VSS漏洞扫描服务

【实时渲染】3DCAT实时渲染云在BIM领域的应用

3DCAT实时渲染

云计算 渲染 BIM 建筑

gpushare.com_基于去噪Transformer的无监督句子编码【EMNLP 2021】

恒源云

深度学习 语音识别 transform

从 ClickHouse 到 ByteHouse:实时数据分析场景下的优化实践

字节跳动数据平台

数据库 字节跳动 Clickhouse 实时数据分析 bytehouse

大数据开发之Flink SQL建设实时数仓实践

@零度

大数据 flink sql

网络安全kali渗透学习 web渗透入门 Kali系统的被动信息收集

学神来啦

博文推荐|基于 Apache Pulsar 的分布式锁

Apache Pulsar

开源 分布式 云原生 中间件 Apache Pulsar

操作指南|最详尽文档翻译志愿指南

Apache Pulsar

开源 翻译 云原生 Apache Pulsar 社区

【行业云说】云数底座赋能基层治理现代化

云计算运维

深入浅出Apache Pulsar(2):Pulsar消息机制

云智慧AIOps社区

Flume日志采集框架构成组件

编程江湖

flume

一文看懂:工程项目管理软件有哪些?怎么选?

优秀

项目管理软件

手把手教你学Dapr - 4. 服务调用

MASA技术团队

C# .net 微软 微服务 dapr

手把手教你学Dapr - 5. 状态管理

MASA技术团队

C# .net 微软 微服务 dapr

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