2015-01-09 141 views
2

我正在搜索Rabbitmq(amqp)和Ejabberd(xmpp)幾天。但我無法弄清楚哪一個可能是一對一聊天的最佳方法?Rabbitmq或Ejabberd,哪一個我應該用於一對一聊天?

當用戶訪問網頁時,用戶將通過使用我的聊天工具與網頁管理員(如果他/她在線)進行通信。網絡管理員可以在不同的聊天室同時回答多個訪問者。但訪客不能互相交談,他們只能與網站管理員交談。

哪一個(rabbitmq或ejabberd)最適合這種需求? 和我應該用什麼方式來實現它? (一個交換多個隊列,每個訪問者和Web管理員都有不同的交換和隊列)?

Regards

+1

如果您只是想聊天,那麼Ejabberd就是以該用例爲基礎構建的。 RabbitMQ是一個更通用的消息服務器 –

+0

感謝您的答案。但我需要更多的細節和他們之間的比較。性能可調整性以及與其他系統的彈性或日誌存儲集成 – user3754542

+0

可以使用rabbitmq開發聊天應用程序。那麼爲什麼我需要使用ejabberd或任何使用xmpp? – user3754542

回答

2

對於聊天服務,您需要從客戶端連接到服務器。 XMPP就是爲此而完成的。它爲客戶提供適合各種環境(桌面,網絡,移動)的協議。

AMQP不是爲此設計的。它更傾向於基礎設施和後端通信。

+0

使用websockets(stomp,任何js庫)和spring作爲ejabberd前面的代理使得性能或可擴展性等任何不同? – user3754542

+0

我的評論不是關於可伸縮性。但是,在前面添加代理ejabberd可能會限制您的代理的可伸縮性。 –