鍍金池/ 問答/GO  網(wǎng)絡(luò)安全  HTML/ 關(guān)于用nsq做消息隊列的設(shè)計模型問題,如果是用做為聊天消息的中間轉(zhuǎn)發(fā)者,那么具體

關(guān)于用nsq做消息隊列的設(shè)計模型問題,如果是用做為聊天消息的中間轉(zhuǎn)發(fā)者,那么具體設(shè)計模型應(yīng)該怎么樣合理呢?

1、問題描述:我想借助nsq做一個簡單的IM系統(tǒng),實現(xiàn)私聊群聊等功能。那么nsq的生產(chǎn)者如何得到需要轉(zhuǎn)發(fā)的消息呢(是nsqd和消息發(fā)出者不在一臺主機(jī)的情況),即如何獲得需要publish到某個Topic的消息,go-nsq提供的客戶端中有通過http直接轉(zhuǎn)發(fā)給nsqd的api嗎?我查看了producer.go中沒有相應(yīng)的publish方法可以直接指定ip和端口來進(jìn)行發(fā)送。那么我設(shè)計用websocket來協(xié)助完成,在消息發(fā)出者那邊建立一個server,在nsqd這邊建立一個client,client收到消息再給publish給nsqd,nsqd在分發(fā)給下面的consumer,這種設(shè)計行得通嗎?感覺很臃腫,這種消息隊列的作用還在嗎???

回答
編輯回答
妖妖

v2-c37363cfc462c4131c9a5489bff818bb_hd.jpg

如圖,其實我就是想問,應(yīng)用服務(wù)器如何把消息放到隊列中的,是應(yīng)當(dāng)放到本地還是通過websocket發(fā)送到其他服務(wù)器在放到隊列呢?

2018年9月19日 18:37