我正在爲Acani寫一個聊天服務器,並且我有一些關於Scaling node.js和websockets with load balancer scalability的問題。如何擴展Node.js WebSocket Redis服務器?
對於負載平衡Node.js究竟意味着什麼?這是否意味着將運行我的服務器應用程序的獨立版本n,每個版本都在單獨的服務器上運行?
要允許一個客戶端向所有其他客戶廣播消息,我存儲一組在服務器上打開的所有
webSocketConnections
。但是,如果我有我的服務器應用程序的運行ň獨立版本,每一個單獨的服務器上,然後將我ň套不同的webSocketConnections
?如果對2的答案是肯定的,那麼我該如何存儲通用的
webSocketConnections
(跨所有服務器)?我認爲我可以這樣做的一種方式是使用Redis Pub/Sub,並且每個webSocketConnection
都訂閱Redis上的一個頻道。但是,單個Redis服務器不會成爲瓶頸嗎?那麼我將如何擴展Redis?它甚至對Redis的規模意味着什麼?這是否意味着我有m運行在不同服務器上的Redis的獨立版本?這甚至有可能嗎?
我聽說Redis沒有擴展。爲什麼有人會這樣說。那是什麼意思?如果這是真的,是否有更好的解決方案來發布/訂閱和/或存儲所有廣播消息的列表?
注意:如果你的回答是Acani永遠也不會擴大,即使每個全部七個十億人(和增長)在地球上的是廣播消息,每秒每個人在地球上,那麼請給出一個有效的解釋。
是什麼阿卡尼? – udidu
我正在構建的應用程序 – ma11hew28