使用gfsh
我启动了一个定位器:启动定位器--name=LocatorUAT--properties ity-file=…\config\gemfire.properties
然后我用属性文件和cache. xml启动一个服务器
启动服务器-名称=ServerUAT-属性文件=…\config\gemfire.properties
其中属性有use-groust-配置=true
,并且cache. xml有许多这样的区域:
然后我像这样再启动2台服务器:
启动服务器--name=ServerUAT2--server-port=40405
启动服务器--name=ServerUAT3--server-port=40406
这些都很好,我可以列出连接到集群的成员和客户端。然后我转到脉冲并查看可以看到3台服务器的拓扑,还可以看到有47个区域:
虽然当我进入server2或server3时,脉冲显示区域=0,我希望在server2和server3中看到复制的区域。为什么?
这是拥有47个区域的server1
这是0个区域的server2
这是0个区域的server3
首先:不完全支持将集群配置服务与单独的cache. xml
文件混合,可能会出现几个问题,我建议在配置集群时使用单一方法(集群配置服务最好是单独的cache.xml
文件,将来可能会被弃用)。
也就是说,第二个和第三个服务器似乎没有使用cache. xml
文件启动,并且区域仅在您在cache.xml
文件中定义它们时(或者当定位器通过集群配置服务将它们推送到它们时)在每个服务器上本地创建;这可能就是这里发生的事情。
如何解决这个问题(假设上述假设是正确的):不要为任何成员使用单独的cache. xml
文件,而是使用gfsh
命令创建所有区域,以便它们在集群配置服务中持久化,并在出现时“推送”到服务器。