kafka的value.serializer 该如何选取?

√锋²º¹8ヾ/❤ 发表于: 2018-08-29   最后更新时间: 2021-09-15 09:34:36   5,528 游览

当设置 value.serializer =org.apache.kafka.common.serialization.StringSerializer
发送的消息是按照明文格式,获取的时候也直接String。

在此想要了解的问题是value.serializer 是否具有压缩功能?还是仅仅将消息序列化了?
循环10000次发送2.5kb的消息,使用

org.apache.kafka.common.serialization.StringSerializer

org.apache.kafka.common.serialization.ByteArraySerializer

消耗的时间并没有什么差别。

我是该在序列化之前,先把内容压缩压缩?(例如gzip压缩)

max.request.size=3376156
batch.size=16384
buffer.memory=671088640
send.buffer.bytes=1310720

另外这些参数设置并没有起作用

发表于 2018-08-29
添加评论

你怎么确定的调整没有起到作用呢?
另外,还是跟上面的问题我跟你回答的一样,先找到瓶颈点,增加分区。
https://www.orchome.com/1098

另外我给你稍微介绍一下增加分区来高并发原理。
kafka把一个topic下的消息,打散很多份存起来(分区),保存到不同kafka集群节点下,每个分区都有对应的leader来管理,而不是集中一个。所以分区越多,其实就是多线程可以同时处理。

半兽人 -> 半兽人 6年前

这一切的基础,都基于你的系统还没到瓶颈

你的答案

查看kafka相关的其他问题或提一个您自己的问题