GemFire 客户端缓存角色
GemFire Client Cache role
我是 GemFire 的新手,我无法弄清楚或找到这个问题的答案。
请帮忙!
在 GemFire 客户端服务器拓扑中,客户端缓存是否仅管理连接池?还是它也维护和提供自己的缓存数据?
ClientCache
管理连接池,它还管理客户端与服务器打开的订阅连接(用于 CQ 和注册兴趣)。
当您创建客户端区域时,您可以将它们配置为选择性地缓存从服务器接收的数据。
Region r = this.clientCache.
createClientRegionFactory(ClientRegionShortcut.PROXY)
.create("customer");
创建代理区域不会在客户端缓存数据。创建 CACHING_PROXY 区域 将 在本地缓存数据。
Region r = this.cache.
createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY)
.create("customer");
如果你想在客户端缓存数据,你应该考虑使用CACHING_PROXY_HEAP_LRU
或CACHING_PROXY_OVERFLOW
来确保你的客户端不会运行内存不足。
如果其他客户端能够更新您在本地缓存的数据,那么您可以 Register Interest 使用服务器,以便将所有更改推送到您的客户端。
我是 GemFire 的新手,我无法弄清楚或找到这个问题的答案。
请帮忙!
在 GemFire 客户端服务器拓扑中,客户端缓存是否仅管理连接池?还是它也维护和提供自己的缓存数据?
ClientCache
管理连接池,它还管理客户端与服务器打开的订阅连接(用于 CQ 和注册兴趣)。
当您创建客户端区域时,您可以将它们配置为选择性地缓存从服务器接收的数据。
Region r = this.clientCache.
createClientRegionFactory(ClientRegionShortcut.PROXY)
.create("customer");
创建代理区域不会在客户端缓存数据。创建 CACHING_PROXY 区域 将 在本地缓存数据。
Region r = this.cache.
createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY)
.create("customer");
如果你想在客户端缓存数据,你应该考虑使用CACHING_PROXY_HEAP_LRU
或CACHING_PROXY_OVERFLOW
来确保你的客户端不会运行内存不足。
如果其他客户端能够更新您在本地缓存的数据,那么您可以 Register Interest 使用服务器,以便将所有更改推送到您的客户端。