为什么NiFi HandleHttpRespose处理任务计数很高?

时间:2019-02-12 14:50:25

标签: apache-nifi

当我在NiFi中将Retry从invokeHTTP连接到HandleHttpRespose(或其他任何进程)时,任务计数将变高(大约1,000,000个任务/时间)并且响应速度变慢,这是什么原因? enter image description here

enter image description here

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

我无法解释HandleHttpResponse上的任务计数,通常仅在处理器具有@ TriggerWhenEmpty批注时才会发生,这意味着它在没有流文件可用且无所事事的情况下一直运行。

通常,将HandleHttpResponse与InvokeHttp结合使用是行不通的,它是与HandleHttpRequest一起使用的,它可以接受请求,在HTTP Context Map中创建一个条目,允许流程继续进行,然后可以响应带有HandleHttpRequest的原始请求。

InvokeHttp是与服务器建立连接的客户端,其中HandleHttpRequest是需要使用HandleHttpResponse向客户端发送响应的服务器。 InvokeHttp不会在HTTP上下文映射中添加任何内容,因此在这种情况下HandleHttpRequest无需执行任何操作。

您通常会在自循环中将InvokeHttp的“重试”关系连接回InvokeHttp,以便它可以继续重试。