如何通过实践提升Kafka入门教程(5)中的吞吐量与可靠性?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1692个文字,预计阅读时间需要7分钟。
在现实环境中,用户普遍愿意承受较小的延迟来换取+TPS的显著提升。最终,从2ms到10ms的延迟增加通常是可以接受的。本文介绍了如何提高producer吞吐量与消息可靠性。
在实际环境中,用户似乎总是愿意用较小的延时增加的代价,去换取 TPS 的显著提升。毕竟,从 2ms 到 10ms 的延时增加通常是可以忍受的。本文介绍了提高producer吞吐量 与 提高消息可靠性 的实践,重点介绍了在Confluent.Kafka组件下如何进行配置的代码实践,相信会对你有所帮助。 1 提高Producer吞吐量的实践在实际环境中,用户似乎总是愿意用较小的延时增加的代价,去换取 TPS 的显著提升。毕竟,从 2ms 到 10ms 的延时增加通常是可以忍受的。
事实上,Kafka Producer 就是采取了这样的设计思想。每当 producer 发布一个立即就发送 到 producer聚集一堆发布后批量发送,如下图所示:
我们可以在客户端做一些配置,来实现producer的高吞吐量,涉及到的一些重要配置如下:
-
批次大小,它和等待时间只要有一个满足就会发送,默认16K,可以修改为32K~512K。
-
等待时间,它和批次大小只要有一个满足就会发送,建议设置为5~100ms(根据你的场景来修改)。
-
压缩算法,使用压缩算法网络传递效率高,但也会相应耗费CPU,建议设置为LZ4或zstd。
本文共计1692个文字,预计阅读时间需要7分钟。
在现实环境中,用户普遍愿意承受较小的延迟来换取+TPS的显著提升。最终,从2ms到10ms的延迟增加通常是可以接受的。本文介绍了如何提高producer吞吐量与消息可靠性。
在实际环境中,用户似乎总是愿意用较小的延时增加的代价,去换取 TPS 的显著提升。毕竟,从 2ms 到 10ms 的延时增加通常是可以忍受的。本文介绍了提高producer吞吐量 与 提高消息可靠性 的实践,重点介绍了在Confluent.Kafka组件下如何进行配置的代码实践,相信会对你有所帮助。 1 提高Producer吞吐量的实践在实际环境中,用户似乎总是愿意用较小的延时增加的代价,去换取 TPS 的显著提升。毕竟,从 2ms 到 10ms 的延时增加通常是可以忍受的。
事实上,Kafka Producer 就是采取了这样的设计思想。每当 producer 发布一个立即就发送 到 producer聚集一堆发布后批量发送,如下图所示:
我们可以在客户端做一些配置,来实现producer的高吞吐量,涉及到的一些重要配置如下:
-
批次大小,它和等待时间只要有一个满足就会发送,默认16K,可以修改为32K~512K。
-
等待时间,它和批次大小只要有一个满足就会发送,建议设置为5~100ms(根据你的场景来修改)。
-
压缩算法,使用压缩算法网络传递效率高,但也会相应耗费CPU,建议设置为LZ4或zstd。

