kafka高级应用
1、过期时间TTL
2、延时队列
原生的kafka并不具备延时队列的功能。我们可以对其改造来实现。有以下几种实现方式
方式1:通过消费者客户端拦截器来实现。
方式2:使用延时分级
缺点:无法做到秒级别的精确延时。
方式2:
3、死信队列
由于某些原因消息无法被正确的投递,为了确保消息不会被无故丢弃,一般将其置于一个特殊角色的队列,这个队列一般称为死信队列。后续分析程序可以通过消费这个死信队列中的内容来分析遇到的异常情况,进而可以完善和优化系统
4、重试队列
重试队列和延时队列的异同?
相同点:都需要设置延时级别
不同点:①延时队列动作有内部触发,重试队列动作有外部消费端触发
②延时队列作用一次,重试队列的作用范围会向后传递