2

我正在研究 Gemfire 和 Spring 数据缓存。我已经从 Spring 成功启动了本地缓存服务器。但是我无法使用以下配置连接到远程缓存服务器。但我可以使用 Gfsh 连接远程服务器--> connect --locator = remoteer IP[10334]

<gfe:client-cache   id="client-cache"   pool-name="my-pool">
</gfe:client-cache>

<gfe:pool   id="my-pool" subscription-enabled="true">
    <gfe:locator host="remote ip" port="10334"  />
</gfe:pool>

<gfe:client-region id="Customer" name="Customer" cache-ref="client-cache">
    <gfe:cache-listener>
        <bean   class="com.demo.util.LoggingCacheListener"  />
    </gfe:cache-listener>
</gfe:client-region>

<bean   id="cacheManager"
    class="org.springframework.data.gemfire.support.GemfireCacheManager">
    <property   name="regions">
        <set>
            <ref bean="Customer" />
        </set>
    </property>
</bean>  

问题日志是“无法将池预填充到最小值,因为:com.gemstone.gemfire.cache.client.NoAvailableLocatorsException:无法连接到列表中的任何定位器 [remoeserver:10334]”

在我的桌面上启动另一个定位器和服务器后,Spring 可以连接集群。但它表示当 Spring @Cachable 被解雇时该区域不存在。错误日志是请求处理失败;嵌套异常是“在获取请求期间未找到名为/Customer/Customer的区域”。区域名称应为/Customer。

4

1 回答 1

1

客户区域仅仅是配置在高速缓存服务器上的主区域(例如,分区或复制区域)的代理。服务器还必须配置为使用相同的定位器地址。

于 2014-07-28T13:59:39.250 回答