2012-05-28 47 views
0

我正在開發一個非常大的項目,涉及在客戶端之間發送數據。所以,我只是在研究一些新技術。無論如何,以爲我會給Nodejs一個嘗試。我只是有一個關於socketio和redis的問題。socketio和redisstore擴展效率

當我們在socketio中使用pub/sub函數時,每個客戶端連接是否創建一個到redis的新連接?或者,socketio是否使用創建三個連接(總共,不管客戶端的數量)做最大的發佈/訂閱?

回答

0

the source,似乎每個客戶端連接有兩個相關的訂閱Redis的(this.store的代碼),但每個socket.io服務器只有三個連接到Redis的(source)。

this.store.subscribe('message:' + data.id, function (packet) { 
    self.onClientMessage(data.id, packet); 
}); 

this.store.subscribe('disconnect:' + data.id, function (reason) { 
    self.onClientDisconnect(data.id, reason); 
}); 

Redis應該能夠處理很多連接以及訂閱,但建議像往常一樣進行基準測試。

+0

是的,我正在查看源代碼,我無法弄清楚是否爲每個客戶端創建了Redis'Store'對象,或者它是否被重用。任何方式謝謝你。 – States