为什么一些 NiFi HTTP 响应需要这么长时间?

Why do some NiFi HTTP responses take so long?

我注意到当我通过 NiFi 发出 200 个响应时,响应通常是即时的。然而,404和500错误似乎需要很长时间,以至于它们经常导致客户端超时。

这是故意的行为吗?或者我的 HandleHTTPResponse 处理器可能设置错误?

--

编辑:虽然在下面有回答,但值得澄清的是——HandleHTTPResponse 的行为并没有不同;我只是碰巧将 [penalized] 流文件路由到设置为提供 404/500 错误代码的处理器......所以,似乎存在相关性。

在不知道哪些响应花费了这么长时间的情况下,我的猜测是错误响应是由可能由于内部超时而抛出的异常生成的(即等待无法完成的其他连接或操作,用尽超时,这会导致 HTTP 响应花费很长时间)。如果愿意,您可以在 JVM 中分析这些操作。

失败的请求可能会受到惩罚。检查故障路径上的设置并将默认的 30 秒值更新为 0,这在处理预期的 http 错误时更有意义。