2011-04-17 121 views
39

我想知道你是否有任何有關websockets併發連接的數據?我在Node.js服務器上使用Socket.io。有多少客戶端可以連接到套接字並接收數據,而無需關閉服務器? 1000? 1000.0000?Socket.io:WebSockets可以處理多少個併發連接?

謝謝!

+3

你的硬件有多好? – Raynos 2011-04-17 18:34:09

+0

http://stackoverflow.com/a/17453704/276648 – user276648 2014-06-04 05:47:26

+2

@Raynos我有一個Corei7 8GB RAM與Debian的64位,你知道有多少?我不這麼認爲 – 2014-08-07 18:05:46

回答

22

這很大程度上取決於您的硬件配置,您在服務器端正在做什麼/處理什麼,以及您的系統是否針對許多併發連接進行了優化。例如,在Linux機器上,默認情況下,在運行硬件資源耗盡或類似的可伸縮性問題之前,您可能首先會打開最大數量的打開文件或其他限制(可能爲increased)。關鍵資源可能是您的node.js程序可以分配的RAM的數量,以保持併發連接的打開和接收新連接的能力。

+6

我想最好的方法是將我的服務器連接到大量的套接字連接並查看統計信息。 – Pono 2011-04-17 19:12:12

+8

@Pono你發現了什麼? – Langdon 2012-05-15 19:22:26

+4

@Pono:ping。這方面的任何指標?謝謝。 – 2013-08-23 15:00:33

15

http://blog.caustik.com/2012/08/19/node-js-w1m-concurrent-connections/

檢查這個博客。我們使用相同的原則。由於硬件限制,以前我們的nodejs服務器會在100個併發連接之後崩潰。但是在我們轉向亞馬遜EC2之後,它現在具有高度的可擴展性。

+3

不錯!但是,WebSocket *(而不是「長輪詢COMET」)連接的計數是多少? – ma11hew28 2014-03-06 16:59:34

+1

@ 3s2ng,亞馬遜可以做多少個併發連接?因爲100坦率地說是非常可怕的...... – Pacerier 2014-05-03 01:17:57

+0

@Pacerier取決於你在哪個實例.micro應該能夠處理100個。 – 3s2ng 2014-05-04 07:42:38

相關問題