kafka防止消息丢失:
生产者:使用同步发送,把ack设置为1或all,并且设置同步的分区大于等于2
消费者:把自动ack改为手动ack提交
kafka防止消息重复消费:
1、数据库表创建唯一主键或联合主键
2、使用分布式锁,以业务ID为锁,保证唯一性
kafka消息顺序消费:
生产者:使用同步发送,设置ack为非0的值
消费者:主题只能设置一个分区,消费组中只能有一个消费者
kafka解决消息积压:
1、消费者使用多线程
2、业务层代码优化
3、创建多个消费组,多个消费者
4、新建消费者进行转发另一topic,然后配置多个分区和多个消费者