GemFire 客户端缓存角色

GemFire Client Cache role

我是 GemFire 的新手,我无法弄清楚或找到这个问题的答案。

请帮忙!

在 GemFire 客户端服务器拓扑中,客户端缓存是否只管理连接池?还是它也维护和提供自己的缓存数据?


ClientCache 管理连接池,它还管理客户端与服务器打开的订阅连接(用于 CQ 和注册兴趣)。
当您创建客户端区域时,您可以将它们配置为选择性地缓存从服务器接收到的数据。

1
2
3
Region r = this.clientCache.
        createClientRegionFactory(ClientRegionShortcut.PROXY)
        .create("customer");

创建代理区域不会缓存客户端上的数据。创建 CACHING_PROXY 区域将在本地缓存数据。

1
2
3
Region r = this.cache.
        createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY)
        .create("customer");

如果你想在客户端缓存数据,你应该考虑使用CACHING_PROXY_HEAP_LRUCACHING_PROXY_OVERFLOW来确保你的客户端不会耗尽内存。

如果其他客户端能够更新您在本地缓存的数据,那么您可以向服务器注册兴趣,以便将所有更改推送到您的客户端。