socketcluster架构图
2016-11-06 17:39:01 0 举报
SocketCluster是一个用于构建高性能实时Web应用的Node.js框架。它基于Socket.IO和Redis,通过将客户端请求分发到多个后端服务器来实现负载均衡和高可用性。在SocketCluster架构中,客户端与Redis服务器建立连接,Redis服务器负责存储和管理所有客户端的会话信息。当客户端发起请求时,Redis服务器根据负载均衡策略将请求转发给一个后端服务器。后端服务器处理请求并将结果返回给Redis服务器,然后由Redis服务器将结果发送给客户端。这种架构使得SocketCluster能够轻松地扩展到大量并发用户,同时保持高性能和低延迟。
作者其他创作
大纲/内容
woker进程
httpServer (10008端口)
socket-client
...
tcp/连接
scworker 2
socket
tcp连接
scworker N
scworker 1
scsocket 1
scsocket 4
socketcluster
exchange(brokenEngineClient)
子进程(woker主进程)
TCPServer(AF_UNIX 实现本机数据流通信)
scsocket 3
scserver
workercluster
broker
scsocket n
s
require(\"woker.js\").run(work)(我们的业务代码运行在这里,业务代码中会进行publish,emit,on)
本机tcp连接
主进程
scsocket 6
scsocket 2
子进程
scsocket 5
require(\"broker.js\").run(work)
brokerEngine
通过cluster模块,10008端口的文件描述符是可以在各个woker进程中共享,不会形成端口占用
0 条评论
下一页