首页 新闻 搜索 专区 学院

rabbitmq 社交类网站如何设计

0
悬赏园豆:100 [已解决问题] 解决于 2020-12-03 08:11

最近要用到Rabbitmq, 网上搜到的大多只是如何消费者比较基本的操作,我想用在社交一类的网站中,请大侠指点是否适用?

例如A关注B,B发动态,推送给A,rabbitmq中是应该每个用户一个队列?在ASP.NET CORE中, 队列应该何时创建?在用户注册完成时还是登录时?

如果有相似、相关的书籍或实例教程,请大侠推荐给我,非常感谢。

sam'ma的主页 sam'ma | 初学一级 | 园豆:77
提问于:2020-11-27 08:05
< >
分享
最佳答案
0

当然是没必要一个用户建一条队列的,队列通常是按业务来划分,比如,关注是条队列,聊天又是一条队列
消息内容里带上发送方UserID,和接受方UserID,这样消息消费端在监听到消息后通过UserID,知道是谁发来的,应该发给谁。 Rabbitmq的例子网上有不少,建议先完成一个最简单的,消息推送与消费,调通后在把业务加入进来

收获园豆:60
Zery | 大侠五级 |园豆:6139 | 2020-11-28 18:06

推送和消费调试正常,可能就是初接触Rabbitmq理解的不够。非常感谢,我按你说的再去尝试下。

sam'ma | 园豆:77 (初学一级) | 2020-12-03 08:10
其他回答(2)
0

肯定不是每个用户一个队列(如果你的用户特别少)。你可以参考一下 按发送的动态类型划分队列,在你添加动态类型时创建队列,用户发送动态时加入队列

收获园豆:20
人间有妖气 | 园豆:222 (菜鸟二级) | 2020-11-27 09:57
0

这个MQ没有啥关系的. 也不可能为每一个用户去创建一个queue.

B用户接入自己的网关, A用户关注B后, 给B推送消息, 吧消息route到B的接入网关,然后在推送给B

B <---> gateway <-- route <-- A关注的消息.

收获园豆:20
czd890 | 园豆:12434 (专家六级) | 2020-11-27 12:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册