首页 科技正文

伊春三中:kafka高吞吐量之消息压缩

admin 科技 2020-04-25 30 0

靠山

保证kafka高吞吐量的另外一大利器就是新闻压缩。就像上图中的压缩饼干。

压缩即空间换时间,通过空间的压缩带来速率的提升,即通过少量的cpu消耗来削减磁盘和网络传输的io。

新闻压缩模子

新闻花样V1

kafka不会直接操作单条新闻,而是直接操作一个新闻聚集。

新闻花样V2:

1, 抽取了新闻的公共部门放到新闻聚集中;去掉每条新闻的公共部门,削减了总体积。

2,新闻的CRC校验由对每一条新闻,移动到了对新闻聚集举行校验,削减了校验次数,节省了cpu;

3, 对单个新闻举行压缩,放到新闻的body字段 pk 对新闻聚集整个举行压缩 更好的压缩效果;

压缩历程模子

伊春三中:kafka高吞吐量之消息压缩 第1张

压缩算法对照

若何权衡一个压缩算法的利害。

伊春三中:kafka高吞吐量之消息压缩 第2张

常见的压缩算法对比:

Zstandard 算法(简写为 zstd)。它是 Facebook 开源的一个压缩算法,能够提供超高的压缩比

伊春三中:kafka高吞吐量之消息压缩 第3张

启用压缩场景

若是cpu负载对照高,不适合启用压缩;

若是带宽不足,而cpu负载不高,最适合启用压缩,节约大量的带宽;

只管制止新闻花样不一致带来的解压缩消耗。

小结

压缩的目的是较少空间占用,带来传输速率的提升,然则需要消耗一定的cpu ;

是一种提高kafka新闻吞吐量的有用设施。

本节回首了新版的kafka是若何对新闻举行压缩的,压缩息争压缩的流程是怎样的,

然后对比了常见的4种压缩算法,凭据详细的使用场景来选择是否启用压缩,以及选择合适的压缩算法。

然后给出了压缩的设置参数,在producer和borker端都可以使用compression.type来设置。

原创不易,点赞关注支持一下吧!转载请注明出处,让我们互通有无,共同进步,迎接沟通交流。
我会连续分享Java软件编程知识和程序员生长职业之路,迎接关注,我整理了这些年编程学习的种种资源,关注民众号‘李福春连续输出’,发送'学习资料'分享给你!
伊春三中:kafka高吞吐量之消息压缩 第4张

,

sunbet

www.0-577.com欢迎您的加入。

版权声明

本文仅代表作者观点,
不代表本站Allbet的立场。
本文系作者授权发表,未经许可,不得转载。

评论