需求分析
利用 Kafka 做消息队列实现发送系统通知,基于事件对代码进行封装
触发事件:
- 评论后,发布通知
- 点赞后,发布通知
- 关注后,发布通知
处理事件:
- 封装事件对象,对于事件发生的时候所需的数据进行封装,包含这条消息所含的所有的数据,
- 开发事件的生产者
- 开发事件的消费者
代码实现
首先我们封装一个事件对象 Event,包含事件触发的时候相关的一切的信息
1 | package com.nowcoder.community.entity; |
有了事件对象,我们就来开发对应的生产者
1 | package com.nowcoder.community.event; |
消费者:
首先我们在 CommunityConstant 定义一下主题的常量
1 | /** |
然后完成 EventConsumer
1 | package com.nowcoder.community.event; |