关于用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,这种设计行得通吗?感觉很臃肿,这种消息队列的作用还在吗???

阅读 4.1k
1 个回答

v2-c37363cfc462c4131c9a5489bff818bb_hd.jpg

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题