
------7.1.1 kafka性能调优
小师兄.
语言学习开发路上的一个初学者。
展开
-
kafka重复消费问题
问题描述 采用kafka读取消息进行处理时,consumer会重复读取afka队列中的数据。 问题原因 kafka的consumer消费数据时首先会从broker里读取一批消息数据进行处理,处理完成后再提交offset。而我们项目中的consumer消费能力比较低,导致取出的一批数据在session.timeout.ms时间内没有处理完成,自动提交offset失败,然后kafka会重新分配p...转载 2019-04-29 09:26:54 · 1105 阅读 · 0 评论 -
Kafka指定消息的partition规则
注意:在配置文件server.properties中指定了partition的数量num.partitions。这指的是多单个topic的partition数量之和。若有多个broker,可能partition分布在不同的节点上,则多个broker的所有partitioin数量加起来为num.partitions 0.7中producer的配置有几项是相排斥的,设置了其一,就不能设置其二 比如...转载 2019-04-29 09:29:54 · 13344 阅读 · 0 评论 -
kafka高并发消息堆积
1、 使用Kafka时,消费者每次poll的数据业务处理时间不能超过kafka的max.poll.interval.ms,该参数在kafka0.10.2.1中的默认值是300s,所以要综合业务处理时间和每次poll的数据数量。 2、Java线程池大小的选择: (1)对于CPU密集型应用,也就是计算密集型,线程池大小应该设置为CPU核数+1; (2)对于IO密集型应用 ...原创 2019-04-29 09:31:56 · 3546 阅读 · 0 评论 -
KafkaConsumer多线程优化
优化目的: KafkaConsumer是以单线程模式运行,为了提升consumer的消费能力,多线程是一个很好的选择。KafkaConsumer和KafkaProducer不同,后者是线程安全的,因此我们鼓励用户在多个线程中共享一个KafkaProducer实例,这样通常都要比每个线程维护一个KafkaProducer实例效率要高。但对于KafkaConsumer而言,它不是线程安全的,所以实现多...转载 2019-12-10 16:54:18 · 2247 阅读 · 0 评论