keepAliveTimeout和连接超时之间有什么区别?如何检查标头中的keepAliveTimeout?

时间:2019-03-28 09:05:15

标签: javascript node.js http keep-alive connection-timeout

keepAliveTimeout和连接超时之间有什么区别吗?我正在使用express的node.js。我指定的超时如下:

const app = express();
app.listen(3000, '0.0.0.0', () => {
  console.log(`The server is running at http://localhost:3000/`);
});
app.on('connection', (socket) => {
  socket.setTimeout(60 * 1000);
});

上面的代码会更改keepAliveTimeout吗?在浏览器中,我仅在浏览器中获得Connection: keep-alive标头。如何检查应用程序的keepAliveTimeout?

2 个答案:

答案 0 :(得分:0)

Keep-Alive标头可以通知客户端服务器愿意保持连接打开状态多长时间(超时= N值),以及在服务器强制执行一次连接之前您可以在同一连接上执行多少请求(最大= M)。关闭连接。

Connection-TimeOut是当您请求连接时花费的时间,并且没有得到响应,因此它会为您提供Connection-TimeOut

答案 1 :(得分:0)

您可以像这样设置参数

const server = app.listen(port, () => {
   console.log(`server on port ${port}`);
});
server.keepAliveTimeout = 65000;
server.headersTimeout = 66000;