使用WSO2 cep引擎的分布式缓存

时间:2015-10-21 14:08:35

标签: wso2 hazelcast wso2cep siddhi

一般信息:

将tomcat server7.0与JDK1.7一起使用

我有两台服务器,我正在使用Hazlecat 3.0版进行缓存。

我的问题在于CEP引擎。使用WSO2引擎

我在pom.xml中添加了以下内容:

<dependency>
        <groupId>org.wso2.siddhi</groupId>
        <artifactId>siddhi-api</artifactId>
        <version>2.1.0-wso2v1</version>
    </dependency>
    <dependency>
        <groupId>org.wso2.siddhi</groupId>
        <artifactId>siddhi-core</artifactId>
        <version>2.1.0-wso2v1</version>
    </dependency>
    <dependency>
        <groupId>org.wso2.siddhi</groupId>
        <artifactId>siddhi-query</artifactId>
        <version>2.1.0-wso2v1</version>
    </dependency>

我将siddhiConfig设置为DistributedProcessing(true)+将instanceIdentifier设置为与我的HazelcastInstance具有相同的ID。

每个服务器都有一个siddihiManager实例。

我的问题是,2服务器是否读取/写入相同的缓存?

我在其他地方看到需要在两台服务器之间进行同步。知道怎么样?

由于

1 个答案:

答案 0 :(得分:0)

当您在WSO2 CEP(而不是Siddhi)310中启用distributed processing时,它将使用嵌入式Hazelcast实例在实例之间共享事件并具有共享状态。但是由于严重的性能问题,在新的WSO2 CEP版本中不鼓励这种方法并停止使用。

在新的CEP 4.0.0中,Apache Storm用于处理分布式处理。您可以参考此sampleguide了解其完成方式。

希望这个帮助,即使我没有直接解决你的初始问题。