首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Siddhi分布式缓存模式部署

Siddhi分布式缓存模式部署
EN

Stack Overflow用户
提问于 2014-04-04 07:58:59
回答 1查看 543关注 0票数 0

根据docs (https://docs.wso2.org/display/CEP310/Clustered+Deployment),您可以在分布式模式下运行Siddhi。

正如我所理解的那样,所有节点都将共享流定义并在共享上下文(流、查询、事件.)上操作。

但我不能让它起作用:

  1. 使用2.0.0-wso2v4版本
  2. 我编写了一个简单的程序,在启用分布式处理的情况下启动两个siddhiManagers。
  3. 该程序在siddhiManager1中创建流和查询。
  4. 添加一个流回调,在两个管理器(前一个流)中打印事件。
  5. 在siddhiManager1中发送事件
  6. 在siddhiManager1和siddhiManager2中打印流

结果是:

  • 我能看到黑兹尔卡斯特在工作,每个经理都看到了另一个。
  • siddhiManager1有一个流、一个查询和打印一个事件。
  • siddhiManager2没有任何东西。

我已经通过使用siddhi发行版(fat-jar)进行了测试,但也使用了siddhi-api、siddhi-core和siddhi查询jars。

Siddhi分发胖jar内部有一些与Hazelcast相关的xml,但据我所见,这些信任没有被加载,在源代码(github)中,我没有看到这些文件(siddhiManager)有什么特别之处。

知道如何在分布式缓存模式部署中运行siddhi吗?我做错什么了?

EN

回答 1

Stack Overflow用户

发布于 2014-04-05 10:42:23

Siddhi不通过Hazelcast复制工件(查询、流定义)。它只共享引擎的事件/状态。因此,为了使这种工作正常进行,您必须首先在分布式设置中的所有Siddhi实例中分别同步这些查询/流定义。一旦你准备好了,你就可以让它在分布式模式下工作了。

请注意,上面的解释假设您只使用没有WSO2 CEP产品的Siddhi库。在WSO2 CEP中,有一种机制可以在分布式设置中的节点之间同步这些部署工件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22856880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档