问题描述
我有一个定制的nifi处理器,该处理器使用外部数据进行某些用户控制的配置。我想知道如何在更改数据后通知处理器重新加载数据。 我本以为可以发送一个flofile来向处理器发送信号,但是我担心在集群环境中,只有一个处理器会收到通知,而其他所有处理器仍将在旧配置上运行。
解决方法
监视文件更改的最常见方法是JDK WatchService或Apache Commons IO Monitor ...
https://www.baeldung.com/java-watchservice-vs-apache-commons-io-monitor-library https://www.baeldung.com/java-nio2-watchservice
您的处理器可以使用其中之一,并在文件更改时重新加载数据,只需确保在正在重新加载它们的代码与在执行过程中使用它们的代码之间同步对处理器中相关字段的访问即可。