Socket.io + node.js + IIS 挂起/冻结问题
Socket.io + node.js + IIS hangs/ Freeze issue
我已经在我的应用程序中实现了 socket.io。我会先解释我的申请,然后再解释我的问题。
我的应用程序是基于节点的应用程序,它通过具有反向代理机制的 IIS 托管。
我在我的应用程序中实现了 Socket.io,其中 socket.io 客户端使用以下代码连接到服务器。
客户代码:
try {
let path = window.location.pathname;
path = path.substring( 0, path.lastIndexOf( "/" ) );
window.SocketConnection = io && io.connect( "/", { path: path + "/socket.io" } );
} catch( exception ) {
console.error( exception );
}
以上代码将执行一次,我的应用程序加载。
服务器代码:
// Socket connection options.
const SocketOptions = {
pingTimeout: 60000,
maxHttpBufferSize: 1024 * 1024 * 48,
transports: [ "polling", "websocket" ]
};
// Initialize the Socket connection with required parameters.
io = socketIO( server, SocketOptions );
问题:
现在的问题是,如果有更多客户端(大约 3K 个连接)连接到服务器,IIS 会挂起并冻结。
我的问题:
提供的信息可能不足以回答我的问题,但如果您回答我的以下问题,将会有所帮助。
- 处理这种 IIS 挂起/冻结的最佳方法是什么
负载?
- 我需要使用任何特殊的 Socke.io client/server 选项来
减少这种负载问题?
通过,
萨拉斯·库马尔。
为
- What is the best way to handle this kind of IIS hang/ freeze on high load?
=> 首先检查系统内存到缓存内存是否变得太高。
=> 尝试优化您的代码以提高性能。
=> 由于服务器无法处理大量请求,需要一段时间。
=> 尝试使用多个服务器来分配您的服务器请求负载。
- Do I need to use any special Socke.io client/server option to reduce this kind of load issue?
=> 是的,你可以做到。像在 time.you 上减少重负载的多个 Socket 服务器可以使用 Loadbalancer。
我已经在我的应用程序中实现了 socket.io。我会先解释我的申请,然后再解释我的问题。
我的应用程序是基于节点的应用程序,它通过具有反向代理机制的 IIS 托管。 我在我的应用程序中实现了 Socket.io,其中 socket.io 客户端使用以下代码连接到服务器。
客户代码:
try {
let path = window.location.pathname;
path = path.substring( 0, path.lastIndexOf( "/" ) );
window.SocketConnection = io && io.connect( "/", { path: path + "/socket.io" } );
} catch( exception ) {
console.error( exception );
}
以上代码将执行一次,我的应用程序加载。
服务器代码:
// Socket connection options.
const SocketOptions = {
pingTimeout: 60000,
maxHttpBufferSize: 1024 * 1024 * 48,
transports: [ "polling", "websocket" ]
};
// Initialize the Socket connection with required parameters.
io = socketIO( server, SocketOptions );
问题: 现在的问题是,如果有更多客户端(大约 3K 个连接)连接到服务器,IIS 会挂起并冻结。
我的问题: 提供的信息可能不足以回答我的问题,但如果您回答我的以下问题,将会有所帮助。
- 处理这种 IIS 挂起/冻结的最佳方法是什么 负载?
- 我需要使用任何特殊的 Socke.io client/server 选项来 减少这种负载问题?
通过, 萨拉斯·库马尔。
为
- What is the best way to handle this kind of IIS hang/ freeze on high load?
=> 首先检查系统内存到缓存内存是否变得太高。
=> 尝试优化您的代码以提高性能。
=> 由于服务器无法处理大量请求,需要一段时间。 => 尝试使用多个服务器来分配您的服务器请求负载。
- Do I need to use any special Socke.io client/server option to reduce this kind of load issue?
=> 是的,你可以做到。像在 time.you 上减少重负载的多个 Socket 服务器可以使用 Loadbalancer。