【问题标题】:In NodeJS, if I don't respond to a request, can anything negative happen to my server?在 NodeJS 中,如果我不响应请求,我的服务器会发生任何负面影响吗?
【发布时间】:2012-07-29 08:57:55
【问题描述】:

我有一个 nodeJS 服务器正在运行。服务器将收到一些不需要响应的请求(只是在服务器中更新)。如果更新失败,客户无需担心。为了节省带宽,我不想回复上述请求。无法响应请求会以某种方式影响我的服务器性能吗?

【问题讨论】:

  • 最好补充一下,在我过去开发的 web 应用程序中,我忽略了许多进来的请求。但是,在服务器开始运行后的某个时间点,它会停止响应所有请求。我不知道对某些请求缺乏响应是否与最终出现的问题有关,但我认为有可能确实是这种情况。

标签: node.js


【解决方案1】:

假设你使用的是http,你至少要返回一个http响应码。如果你不这样做,你就违反了 http——客户端将等待响应,并且会在尝试中死掉(即一段时间后会超时)。

根据documentation for end,您必须致电end 以获得每个响应。如果您未指定响应代码,它将为您发送响应代码。所以是的,需要回应。

【讨论】:

  • 有没有不需要响应的http请求? POST 也许?如果只调用response.end() 而不指定任何数据会发生什么?
  • 正如我所说,它会为您发送响应代码。回应是必要的。客户应该如何知道何时没有更多数据?真的,你过度优化了。必须发送响应代码不是您的问题。
  • 如果客户不寻找实际响应,您可以随时发送“204 No Content”代码。
猜你喜欢
  • 1970-01-01
  • 2016-08-03
  • 2020-05-27
  • 1970-01-01
  • 2017-01-17
  • 2020-08-19
  • 1970-01-01
  • 1970-01-01
  • 2015-10-13
相关资源
最近更新 更多