kafka优化

1、Producer优化 producer.properties

compression.type:none
认发送不进行 压缩 ,推荐配置一种适合的压缩算法,可以大幅度的减缓网络压力和
broker 的存储压力。

2、Kafka内存调整( kafka-server-start.sh

认内存 1个 G 生产环境尽量不要超过 6个 G。export KAFKA_HEAP_OPTS=" xms4g Xmx4g

 

 3、如果发送的消息过大如何解决

可以设置压缩算法为snappy;

查看kafka配置,认单条消息最大为1M,当单条消息长度超过1M时,就会出现发送到broker失败,从而导致消息在producer的队列中一直累积,直到撑爆生产者的内存。

         1.修改kafka的broker配置:message.max.bytes(认:1000000B),这个参数表示单条消息的最大长度。在使用kafka的时候,应该预估单条消息的最大长度,不然导致发送失败。

       2.修改kafka的broker配置:replica.fetch.max.bytes (认: 1MB),broker可复制的消息的最大字节数。这个值应该比message.max.bytes大,否则broker会接收此消息,但无法将此消息复制出去,从而造成数据丢失。

      3.修改消费者程序端配置:fetch.message.max.bytes (认 1MB) – 消费者能读取的最大消息。这个值应该大于或等于message.max.bytes。如果不调节这个参数,就会导致消费者无法消费到消息,并且不会爆出异常或者警告,导致消息在broker中累积,此处要注意

相关文章

# 前言 现有主流消息中间件都是生产者-消费者模型,主要角色...
错误的根源是:kafka版本过高所致,2.2+=的版本,已经不需要...
DWS层主要是存放大宽表数据,此业务中主要是针对Kafka topic...
不多BB讲原理,只教你怎么用,看了全网没有比我更详细的了,...
终于写完了,其实最开始学kafka的时候是今年2月份,那时候还...
使用GPKafka实现Kafka数据导入Greenplum数据库踩坑问题记录(...