关于用nsq做消息队列的设计模型问题,如果是用做为聊天消息的中间转发者,那么具体设计模型应该怎么样合理呢?

1、问题描述:我想借助nsq做一个简单的IM系统,实现私聊群聊等功能。那么nsq的生产者如何得到需要转发的消息呢(是nsqd和消息发出者不在一台主机的情况),即如何获得需要publish到某个Topic的消息,go-nsq提供的客户端中有通过http直接转发给nsqd的api吗?我查看了producer.go中没有相应的publish方法可以直接指定ip和端口来进行发送。那么我设计用websocket来协助完成,在消息发出者那边建立一个server,在nsqd这边建立一个client,client收到消息再给publish给nsqd,nsqd在分发给下面的consumer,这种设计行得通吗?感觉很臃肿,这种消息队列的作用还在吗???

回答:

v2-c37363cfc462c4131c9a5489bff818bb_hd.jpg

如图,其实我就是想问,应用服务器如何把消息放到队列中的,是应当放到本地还是通过websocket发送到其他服务器在放到队列呢?

以上是 关于用nsq做消息队列的设计模型问题,如果是用做为聊天消息的中间转发者,那么具体设计模型应该怎么样合理呢? 的全部内容, 来源链接: utcz.com/p/183675.html

回到顶部