仿牛客论坛项目day7|Kafka

一、阻塞队列

创建了一个生产者线程和一个消费者线程。生产者线程向队列中放入元素,消费者线程从队列中取出元素。我们可以看到,当队列为空时,消费者线程会被阻塞,直到生产者线程向队列中放入新的元素。

二、Kafka入门

发布、订阅

三、spring整合Kafka

首先,需要在项目的pom.xml中添加对Spring Kafka的依赖。然后,可以通过配置类或application.properties来配置Kafka生产者和消费者。接着,使用KafkaTemplate发送消息和使用@KafkaListener注解来监听和接收消息。

四、发送系统通知

功能拆解:

具体实现:

构造生产者与消费者

生产者:将得到的event发给指定主题

消费者:将event转换为message对象,再将message存入数据库

调用producer

comment controller:生成event,调用生产者的fire event方法。有人点赞时就会将event发出,到消息队列里,消费者监听到后会将event转换为message对象,再将message存入数据库。

like controller:生成event,调用生产者的fire event方法。

follow controller:生成event,调用生产者的fire event方法。

五、显示系统通知

message表里有新的点赞、评论、关注。现在增加将这些数据显示在系统通知页面的功能。

service:增加查询message通知的方法

controller:将查到的message放入页面

相关推荐
珠***格9 小时前
XGF10-Z-4典型接入方式解析:10千伏专变用户380伏多点分布式光伏如何并网?
网络·人工智能·分布式·安全·边缘计算
2601_9609067210 小时前
中国智能投影市场(不含激光电视)全渠道销量同比暴跌21.4%
kafka·etcd·consul·storm
阿里云云原生16 小时前
Agent 不再是“玩具”!AgentScope Java 2.0 GA 发布:构建企业级分布式智能体底座
java·开发语言·分布式·agentscope
时代的狂17 小时前
RabbitMQ 面试问答
分布式·面试·rabbitmq
hkNaruto18 小时前
【大数据】《传统Hadoop大数据技术入门:补充与进阶——从数据格式到智能决策的问答实录》
大数据·hadoop·分布式
ThanksGive18 小时前
TurboLock:从 v1 Redis 分布式锁到 v2 Go 并发控制中间件
分布式·后端
韩楚风1 天前
【参天引擎】事务生命周期 / MVCC / Undo / ACID / 分布式事务 功能域整体解析
数据库·分布式·mysql·架构·cantian
ACP广源盛139246256731 天前
GSV6155@ACP# 搭配 AI 服务器、AI PC 完整适配方案
大数据·服务器·人工智能·分布式·单片机·嵌入式硬件
ZENERGY-众壹2 天前
50MW分布式VPP接入实战:调度中心要求的1分钟频率如何不卡死API
运维·服务器·分布式·光伏运维
富士康质检员张全蛋2 天前
Kafka的操作 生产消息
分布式·kafka