2014-03-27 224 views
-1

我正在開發一個Asp.Net Web應用程序(Web窗體),並且我想在母版頁的標題中添加一個通知列表,以顯示從服務器到客戶端的通知(如新的電子郵件通知)。Web應用程序發送客戶端通知最佳實踐?

我發現兩種方法可以做到這一點:

1-正常的JQuery Ajax調用帶有定時器發送請求的時間每個特定時期檢查來自服務器的新通知。

2-在服務器和所有客戶端之間建立連接,並將服務器端代碼推送到連接的客戶端,例如使用SignalR庫

第一個問題:這是最佳實踐解決方案,爲什麼考慮到低硬件和連接帶寬,特別是對於服務器和所有客戶端之間存在持續連接的第二個解決方案?

第二個問題:SignalR最好的圖書館還是有更好的實時網絡功能庫?

回答

1

授予SinglarR保持持續連接,就吞吐量而言,在帶寬方面有非常實際的節省; SignalR不會來回發送頭文件,因爲每個輪詢都會有請求頭和響應頭。此外,SignalR還爲不同支持的瀏覽器提供了內置回退功能(比如那些支持長輪詢和不支持長輪詢的瀏覽器),更不用說通知將近乎即時(而不是等待下一輪投票) 。

就最好的解決方案而言,我覺得這可能是有爭議的,但SignalR是一個非常活躍的項目,擁有大量的支持。你可能會發現一些輕量級的東西,但是SignalR很容易擴展,資源也很豐富。

相關問題