我有signalR應用程序有5000個客戶端連接到服務器。我的客戶沒有任何控制權來發送消息或任何東西。我的客戶正在向客戶發送一個5位數的消息。吞吐量爲SignalR連接
我的問題是,如果5000客戶端連接到SignalR服務器什麼是吞吐量帶寬是我的服務器所需要的。
我有signalR應用程序有5000個客戶端連接到服務器。我的客戶沒有任何控制權來發送消息或任何東西。我的客戶正在向客戶發送一個5位數的消息。吞吐量爲SignalR連接
我的問題是,如果5000客戶端連接到SignalR服務器什麼是吞吐量帶寬是我的服務器所需要的。
這可以計算如下所示:
(Max Size of message) * (Max frequency of message) * (Max Number of clients)
例如,讓我們說的消息大小是1字節。通過每秒1條消息和5000個客戶端,這將導致5兆字節/秒(〜40兆比特每秒網絡速度)的所需帶寬。這是峯值處理所需的最大帶寬。
您需要在應用程序中創建加載方案以查看確切的數字。
除了@ Schachaf.Gortler的很好的回答,考慮到SignalR通信可能會有額外的HTTP開銷,這取決於它使用什麼方法進行通信(WebSockets或回退技術)。
請參閱Using Fiddler with SignalR以瞭解如何獲取應用程序原始消息的實際大小。
這會受到應用程序每個部分的影響 - 建議您加載測試應用程序以確定此類事情。以下是一些資源:http://channel9.msdn.com/Events/Build/2013/3-502 http://www.asp.net/signalr/overview/signalr-20/performance-and-scaling/signalr -performance SignalR代碼庫還包含一個名爲Crank的負載測試應用程序 - 您可以在此處獲取代碼庫:https://github.com/SignalR/SignalR/archive/master.zip –