写点什么

降本增效:Grab 如何在亚马逊云科技上将 Kafka 消费者流量成本降到零

  • 2023-09-07
    北京
  • 本文字数:1076 字

    阅读完需:约 4 分钟

大小:597.00K时长:03:23
降本增效:Grab如何在亚马逊云科技上将Kafka消费者流量成本降到零

Kafka 2.3 引入了将 Apache Kafka 消费者连接到相同可用区域(AZ)代理节点的能力,Grab 利用这一能力重新配置了消费者,将亚马逊云科技上的流量成本降低为零。这一更改大大降低了在亚马逊云科技上运行 Apache Kafka 的基础设施总成本。

 

Grab 以 Apache Kafka 为中心创建了一个流数据平台,支撑公司所有的产品。遵循 Kafka 最佳实践,他们的初始配置为每个 Kafka 分区三个副本,横跨亚马逊云科技区域中三个不同的可用区。负责该平台的团队观察到,跨 AZ 流量占了他们 Kafka 平台一半的成本,因为亚马逊云科技对跨AZ数据传输收费

 

对于初始设置的成本,Fabrice HarbulotQuang Minh Tran的看法如下:

这种设计的问题在于,它会产生惊人的跨 AZ 网络流量。这是因为,在默认情况下,Kafka 客户端只与分区 leader 通信,而分区 leader 有 67%的概率驻留在不同的 AZ 中。

 

跨 AZ 流量包括新发布的消息、代理之间的数据复制和消费者获取的消息。



默认消费者配置,消费者从分区 leader 获取数据(图片来源:Grab工程博客

 

Apache Kafka 2.3开始,可以将消费者配置为从分区副本中获取数据了。这样,如果消费者只从同一 AZ 中的代理获取消息,就不会产生数据传输成本了。

 

这个特性要求 Kafka 代理和消费者都知道其所在的 AZ。对于 Kafka 代理,团队会使用 AZ ID(az1、az2、az3 等)配置broker.rack 。AZ ID 与 AZ 名称(1a、1b、1c 等)不同,因为AZ名称在亚马逊云科技账户间不一致。他们还将参数replica.selector.class的值设置为org.apache.kafka.common.replica.RackAwareReplicaSelector

 

在消费者端,团队更新了内部 Kafka SDK,基于 EC2 主机元数据用 AZ ID 配置client.rack 参数,为的是应用程序团队可以通过导出环境变量来启用该功能。



自定义消费者配置,消费者从最近的副本获取数据(图片来源:Grab工程博客

 

在某些服务上应用新设置后,团队观察发现,跨 AZ 流量成本下降,并且有一些值得注意的副作用。首先,端到端延迟最多增加了 500 毫秒。考虑到大多数消费者从副本获取消息,这也是意料之中的。延迟增加是由复制时间导致的。理论上,任何对延迟敏感的数据流都应该始终从分区 leader 获取数据,即使那样会产生额外的成本。

 

其次,在代理维护(停机)时,直接从副本获取消息的消费者可能会遇到代理不可用的情况,因此,它们应该等待/重试,直到同一 AZ 中的代理恢复在线。最后,团队观察到,代理的负载与跨 AZ 的消费者数量有关。这意味着,消费者的均匀分布对于确保代理的负载平衡至关重要。

 

原文链接:

https://www.infoq.com/news/2023/07/grab-apache-kafka-aws-cost/


相关阅读:

Cloudflare的Kafka之旅:万亿级消息处理实践

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


2023-09-07 08:002359

评论

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

SmartGit for Mac(老牌Git客户端)v22.1.1正式激活版

理理

在PHP8中向数组添加元素-PHP8知识详解

百度搜索:蓝易云

SpringBoot集成Redis+Session持久化存储到Redis

百度搜索:蓝易云

淘宝双十一满减活动时间表2024

妙龙

双11

2024年双11比平时便宜多少?双11什么时候最优惠?双十一开始结束时间表

妙龙

双十一 双11

Autodesk AI提升Fusion和Alias性能,释放设计与制造领域生产力、效率及灵感

E科讯

编译CentOS Stream 8系统的OpenSSHV9.4rpm安装包

百度搜索:蓝易云

科大讯飞学习机T30 Pro怎么样?跟其他型号比值得买吗

妙龙

科大讯飞 学习机

Smooze Pro for Mac v2.1.11激活版 鼠标增强工具专业版

Rose

苹果mac装机必备:智能文本计算器Soulver 3

Rose

Autodesk AutoCAD 2020 mac激活版 cad202中文安装包分享

理理

centos7 firewalld ip转发设置、安装docker-compose出现错误、docker-compose部署Yapi

百度搜索:蓝易云

Java跳过证书访问HTTPS

百度搜索:蓝易云

淘宝商品详情API:深入解析商品推荐理由与卖点

代码忍者

pinduoduo API API 性能测试

Windows分区备份还原工具 Winclone Pro for Mac v10.4英文激活版

Rose

功能强大的Plist文件编辑软件PlistEdit Pro for Mac

Mac相关知识分享

Mac软件

《使用Gin框架构建分布式应用》阅读笔记:p77-p87

codists

Go gin 编程人

2024年10月14日淘宝天猫京东双11红包领取满300减50

妙龙

双十一 双11

实时创作和视觉编程软件 TouchDesigner Pro

Rose

图解LinkedListQueue数据结构设计与应用案例

肖哥弹架构

Java 容器 数据结构

一键蓝牙设备连接切换 ToothFairy for Mac v2.8.4中文版 兼容M/intel

Rose

专业级的RAW图像处理软件 SILKYPIX Developer Studio Pro 11

Rose

实用的系统优化清理工具 Sensei for Mac v1.5.11中文激活版

Rose

2024淘宝双十一超级红包在哪里领取 最高多少钱

妙龙

双十一 双11

2024淘宝双十一消费券怎么领取 淘宝券优惠券怎么领

妙龙

双十一 双11

Illustrator 2023 for mac(Ai2023矢量设计应用程序)v27.9.0中文激活版

理理

DBeaverUE for Mac(数据库管理软件)v24.2.3 旗舰激活版

理理

京东双十一红包口令大全,2024年京东双11红包玩法口令以及领取使用时间

妙龙

双十一 京东双十一

office2016 macv16.16.27中文激活版

Rose

Elasticsearch Inference API 增加对阿里云 AI 的支持

阿里云大数据AI技术

人工智能 elasticsearch elastic 阿里云 AI搜索

【中文激活码】Axure RP 10 及Axure RP 10破解教程 附安装包 Mac/win

Rose

降本增效:Grab如何在亚马逊云科技上将Kafka消费者流量成本降到零_云端开发_Rafal Gancarz_InfoQ精选文章