我已經實現了一個使用Jabber的Web聊天系統,Tigase服務器和基於Ajax的客戶端使用JsJac通過BOSH進行通信,Apache mod_proxy將HTTP通信轉發給Tigase。這種方式運行得很好,但我注意到性能與桌面Jabber客戶端(如Exodus)之間存在一個主要差距,特別是在加入具有長消息歷史記錄的多用戶聊天時。提高BOSH吞吐量
具體來說,從監控HTTP流量看來,服務器每個HTTP請求響應週期只能發送一個XMPP消息。對於正常使用情況來說,這很好(我們可以獲得大約80-100毫秒的往返時間,這並不算太壞),但是在加載MUC歷史記錄時,它可能是一個真正的拖延。
所以我的問題是:Jabber或BOSH是否提供了可能適用於此用例的捆綁或流式消息的任何機制?已經有客戶和服務器在那裏實施這樣的事情了嗎?或者我必須自己修改Tigase和JsJac(這當然可能,但並不理想)?
你有沒有解決這個問題?聽起來像一個很棒的項目... – Kevin 2011-03-18 02:02:12
不完全是,但它是我仍然感興趣的一個話題。我會在下面查看亞歷克的答案,看看會發生什麼。 – Dan 2011-03-24 18:54:26