当前位置: 移动技术网 > IT编程>软件设计>架构 > 用kafka实现消息推送

用kafka实现消息推送

2018年09月14日  | 移动技术网IT编程  | 我要评论

 

 一个人知道的topic是单点推送,大家都知道topic是广播。

 

kafka消息消费机制:

1.广播消费:通过定义topic前缀来标识属于广播的消息(例如:topicname:gonggao1535680698557,gonggao1535680722624,gonggao1535681677381等topic),消费这些前缀为公告的消息时,不同的角色,不同的userid代表对应的groupid,实现广播消费。

2.单个消费:通过定义topic前缀为person的topic(例如:person1time1536031022097  persion和time中间的数字为当前用户:1  ,person2time165156165 persion和time中间的数字为当前用户:2 ),对应的在消费该消息时groupid固定,kafka就不能广播消费,只能对应某个用户消费了。

注意:在消费过程中有一个配置:enable.auto.commit(当为true则消费该消息,下次再消费就不能消费了,当为false时消费该消息,下次还能消费)。

kafka只支持消息持久化,消费端为拉模型,消费状态和订阅关系由客户端端负责维护,消息消费完后不会立即删除,会保留历史消息。因此支持多订阅时,消息只会存储一份就可以了。

用代码说话:

3.消费者配置连接kafka:

4.消费者消费消息:

 

——————————————————

推荐阅读:

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网