【问题标题】:Apache & Node Reverse proxy, Socket Timeout, KeepaliveApache 和 Node 反向代理、套接字超时、Keepalive
【发布时间】:2015-09-15 22:26:37
【问题描述】:

我有一个使用 node 和 expressjs 构建的 API 应用程序。使用 Apache 做反向代理,启用 keepalive。

由于默认的 2 分钟套接字超时,某些请求(特别是 POST/PUT)最终会挂起 2 分钟。并不总是发生,但经常发生。一旦超时,客户端就会收到响应并继续发送其他请求。

这似乎是由于 Keep-Alive,虽然我不是 100% 确定。

添加标题:

res.set('Connection', 'close');

使问题消失,这就是为什么我认为这与keep-alive有关。

研究这个问题两天没有成功。

是否值得设置标题并接受后果,或者是否有任何其他解决方案/解释这种行为?

【问题讨论】:

    标签: node.js apache timeout reverse-proxy keep-alive


    【解决方案1】:

    事实证明,这完全是由于在 PUT/POST 请求之前发送的 DELETE 请求上的“204 - 无内容”响应引起的。变化自

    res.send(data)
    

    res.status(204).end()
    

    为我解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2016-07-31
      • 2020-08-05
      • 2014-05-17
      • 1970-01-01
      • 2013-06-02
      • 2019-06-03
      • 2015-08-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多