对于同一子网中的WSO2 URL,即使禁用了群集,也会分发WSO2 hazelcast。

对于同一子网中的WSO2 URL,即使禁用了群集,也会分发WSO2 hazelcast。,wso2,wso2esb,hazelcast,wso2carbon,Wso2,Wso2esb,Hazelcast,Wso2carbon,我们在WSO2中禁用了集群,如axis2.xml中所示 <clustering class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent" enable="false"> 期待这方面的一些提示。 Sujith Babu为什么每次都要创建新的HazelcastInstance?您应该使用ESB创建的现有实例。如何在自定义java中介中以编程方式访问现有实例?不确

我们在WSO2中禁用了集群,如axis2.xml中所示

<clustering class="org.wso2.carbon.core.clustering.hazelcast.HazelcastClusteringAgent"
                enable="false">
期待这方面的一些提示。

Sujith Babu

为什么每次都要创建新的HazelcastInstance?您应该使用ESB创建的现有实例。如何在自定义java中介中以编程方式访问现有实例?不确定HazelcastInstance是作为osgi服务提供的。如果您的代码在osgi捆绑包中,您可以通过scr符号(例如:)访问它,否则如果它在佩林罐中,您可以通过carbonContext api()访问osgi服务。为什么每次都要创建新的HazelcastInstance?您应该使用ESB创建的现有实例。如何在自定义java中介中以编程方式访问现有实例?不确定HazelcastInstance是作为osgi服务提供的。如果您的代码在osgi捆绑包中,您可以通过scr表示法(例如:)访问它,否则如果它在佩林罐中,您可以通过carbonContext api()访问osgi服务
public Map getMapInstance(String cacheName)
{
    int tenantId = getCurrentTenantId();

    HazelcastInstance instance = Hazelcast.newHazelcastInstance();
    String key = new StringBuilder().append(cacheName).append(Utils.SEPARATOR).append(tenantId).toString();
    Map map = instance.getMap(key); 
    return map;
}



putValueInCache(String cacheName)
{

    Map map = getMapInstance(cacheName);
    map.("KEY", "OBJECT");

}