如何为 NiFi 设置分布式地图缓存?

How does one setup a Distributed Map Cache for NiFi?

我是 NiFi 的新手,只是在玩弄处理器。

我正在尝试在测试中加入 WaitNotify 处理器,但我必须设置分布式地图缓存(服务器 客户端?)。

NiFi 文档假定我没有达到一定的理解水平。

我已经在我的计算机 (macOS) 上安装了 memcached 并验证它在端口 11211(默认)上是 运行。我在 NiFi 的 CONTROLLER SERVICES 下创建了 DistributedMapCacheClientServiceDistributedMapCacheServer,但出现 java.net.SocketTimeoutException 和其他错误。

是否有关于整个主题的好的教程?有人可以建议如何前进吗?

DistributedMapCacheClientServiceDistributedMapCacheServer 不需要额外的软件。

要创建这些服务,请右键单击 canvas、select Configure,然后 select Controller Services 选项卡。然后,您可以通过单击右侧的 + 按钮并按名称搜索来添加新服务。

  1. 使用默认参数(端口 4557)创建 DistributedMapCacheServer 并启用它。这将启动内置缓存服务器。

  2. 使用主机名 localhost 和其他默认参数创建 DistributedMapCacheClientService 并启用它

  3. 创建一个简单的流 GenerateFlowFile 在参数中设置 run schedule 而不是零字节大小。 将其连接到 PutDistributedMapCacheEntry Identifier 设置为 Key01 并选择您的 DistributedMapCacheClientService

尝试运行它。如果端口 4557 未被其他软件使用,则放置缓存应该可以工作。

@达山 是的,它会起作用,因为在 DistributedMapCacheClientService 的文档中说:

Provides the ability to communicate with a DistributedMapCacheServer. This can be used in order to share a Map between nodes in a NiFi cluster