2013-10-31 55 views

回答

5

從你的意思我猜你想要實現像自動填充建議爲seachbox,或搜索你的類型的東西。根據我的經驗,WebSocket適用於這些用例。

WebSocket是低延遲的,所以結果回來非常快。通過與用戶距離不遠的快速後端服務器,您可以獲得接近本地的本地性能。

如果有實際的流量,WebSocket也只會消耗帶寬,所以你不會因爲有很多搜索框連接而支付任何流量處罰。

我編寫了一個演示應用程序,它使用WebSocket連接爲搜索框(在Oracle DB後端搜索1百萬條記錄)獲取自動填充建議。該演示目前不在線,但您可以查看代碼https://github.com/tavendo/WebMQDemo/tree/master/web/demo/autocomplete

演示中的WebSocket部分非常易於實現。該演示在瀏覽器中使用AutobahnJS,該瀏覽器在原始WebSocket上提供了一些舒適功能,並實現了PubSub + RPC協議(WAMP)。代碼例如對於自動完成數據的請求非常簡單(第717行)。

它需要crossbar.io服務器和Oracle數據庫才能運行 - 而crossbar.io項目的網站目前正在建設中。所以目前不容易。

完全披露:我爲Tavendo工作,它開始了Autobahn和crossbar.io項目。兩者都只是作爲例子給出 - 還有其他WebSocket技術可以使用。這正是我所熟悉的。

相關問題