2

Gemfire と Spring のデータ キャッシングに取り組んでいます。Spring からローカル キャッシュ サーバーを正常に起動しました。しかし、以下の構成ではリモートキャッシュサーバーに接続できませんでした。しかし、Gfshを使用してリモートサーバーに接続できます--> connect --locator = remoter 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 が起動されたとき、リージョンは存在しなかったとのことです。エラー ログは Request processing failed; です。ネストされた例外は、「get リクエスト中に/Customer/Customerという名前のリージョンが見つかりませんでした」です。地域名は/Customer にする必要があります。

4

1 に答える 1

1

クライアント リージョンは、キャッシュ サーバー上に構成されたマスター リージョン (たとえば、分割または複製されたリージョン) への単なるプロキシです。サーバーも、同じロケーター アドレスを使用するように構成する必要があります。

于 2014-07-28T13:59:39.250 に答える