我们正在NiFi中创建一些流程,并且可能会出现某些队列正在建立的情况,但由于某种原因,流量无法按预期工作。如何清除NiFi队列?
在一天结束时,我想清除队列,并以某种方式想自动化它。问题是我们如何从后端删除队列?有什么方法可以实现这一目标吗?
我们正在NiFi中创建一些流程,并且可能会出现某些队列正在建立的情况,但由于某种原因,流量无法按预期工作。如何清除NiFi队列?
在一天结束时,我想清除队列,并以某种方式想自动化它。问题是我们如何从后端删除队列?有什么方法可以实现这一目标吗?
除了Bryan提到的明确的“Drop Queue”功能之外,您可能还会感兴趣的其他功能还包括连接上的“Back Pressure”和“FlowFile Expiration”。这些允许您自动控制任何给定连接中的数据量。每种方法的简单解释如下,但有关更详细的解释,我会向您推荐Apache NiFi User Guide
背压:当队列达到一定的大小时,停止触发供给它的处理器。
FlowFile过期:一旦FlowFile在队列中花费了X个时间量,它将被丢弃。
在Apache NiFi用户界面中,如果您右键单击某个队列,可以选择清空该队列。任何你可以在UI做的是通过REST服务支持,所以来看看的REST API文档:
https://nifi.apache.org/docs/nifi-docs/rest-api/index.html
具体一个POST到/ flowfile队列/ {ID} /落请求。
您还可以在使用应用程序查看在执行某些操作时对REST API进行的调用时使用Chrome和开放式开发人员工具。
如果空队列以某种方式失败,导致无法删除队列,该怎么办 - 有没有办法强制停止队列? – serup
我正在寻找FlowFile过期类的东西,这解决了我的问题。 –