我正在为移动客户端实现一个后端,提供聊天服务,包括多个聊天室给用户
我决定使用kafka来订阅和发布聊天消息,因为我不能将stomp与springwebflux结合使用(我选择使用stomp而不是servlet)。
根据我的计划,聊天信息的交换是通过以下过程进行的(假设 Clients A and B
在同一个聊天室。) client A
连接到 chat server 1
通过websocket。 client B
连接到 chat server 2
通过websocket。 chat server1 and 2
订阅
Kafka topic 'chat' client A
向发送聊天信息 chat server 1
. chat server1
首先将聊天消息存储到数据库,然后将消息发布到 Kafka topic 'chat'
. 消息包含聊天室id、聊天内容、发件人id。 chat server2
接收来自Kafka主题“聊天”的消息。 chat server2
筛选聊天室id为的邮件 client B
他加入了。 chat server2
将筛选后的邮件发送到 client B
.
我的问题是
我担心这不是通常的方式。普通人做什么?
暂无答案!
目前还没有任何答案,快来回答吧!