我是Spring XD的新手,并使用xd-singlenode在本地运行Spring XD。我创建了一些流和点击。我想知道以下内容:
如何将流和作业定义持久保存到数据库中,这样每当我重新启动服务器时(无论是本地模式还是分布式模式),我都不需要重新创建它们。
我应该如何实现pub-sub机制,使用Spring XD向请求者发送大量二进制/文本数据。
谢谢!
答案 0 :(得分:1)
对于第一个请求,您需要使用单独的ZooKeeper服务器(当您以单节点模式启动XD时,它会透明地为您创建一个嵌入式ZooKeeper服务器。但是您可以将它指向一个不同的ZK,您必须使用它如果您在分布式模式下运行,请执行此操作。流定义存储在ZooKeeper中,因此它们可以在spring XD服务器重启后继续存在。 ZooKeeper的典型设置是使用端口2181,因此您可以像这样启动XD单节点(* nix):
ZK_CLIENT_CONNECT=localhost:2181 ./bin/xd-singlenode
(或者您可以修改servers.yml
文件,查找zk.client.connect
密钥)
至于你的第二个问题,我不确定我理解它。随意澄清
答案 1 :(得分:0)
当您使用单个节点时,流和作业不是持久性的,您可以通过启动以下服务器来使用分布式节点: 1. Redis 2. Hsqldb 容器 4. admin
然后,您不需要每次都重新创建流和作业。
莫哈。