【问题标题】:HTTP request is being blockedHTTP 请求被阻止
【发布时间】:2019-06-17 17:11:01
【问题描述】:

我正在开发多个相互通信的应用程序。我正在使用 Chrome 和 Firefox 来测试我的应用程序。这个问题似乎在两种浏览器中都存在。

问题: 我正在从 app nr.1 向 Express Node 服务器发送一个 PUT 请求,该服务器本质上是向我的 mongo 数据库服务器发送更新。更新后的 app nr.2 将使用 GET 请求检索更新后的值。 Websockets 被用于通知应用程序的变化。

但问题是接收应用程序 nr.2 上的 HTTP GET 请求需要几秒钟才能完成(在完成其中一些请求之后)。

要解释上面的文字,请看下面的截图:

前几个 GET 请求需要 3-5ms 才能完成,接下来的 GET 请求将需要 95634ms 才能完成......

这可能是什么原因,如何解决?

【问题讨论】:

  • 您的基础架构是否有任何限制?看起来服务器正忙于做一些不同的事情。您的查询优先级最低
  • 如果你不使用workers,请不要在nodejs中使用繁重的同步操作

标签: javascript node.js reactjs express react-redux


【解决方案1】:

不看你的整个堆栈就很难判断。

有时,位于您应用程序前面的反向代理可能会导致此类问题

他们可能会尝试路由到 ipv6 而不是 ipv4,特别是如果您使用 localhost 来指向您的 GET 请求。解决方法是使用 127.0.0.1 而不是 localhost

此外,代理上的高保活超时设置可能会导致此问题

在这种情况下最好的第一个地方是

  • 代理日志
  • 节点日志
  • 服务器日志(即防火墙或限制)

【讨论】:

    猜你喜欢
    • 2021-01-05
    • 2015-12-17
    • 2019-10-11
    • 2013-05-28
    • 1970-01-01
    • 2018-09-09
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    相关资源
    最近更新 更多