我正面临一个错误,这是一个特殊的东西。我正在使用AEM 5.6.1。
我有两个作者实例(a1和a2),两者都在群集中。我们每天凌晨2点在实例上执行tar优化。 - 下午5点(伦敦时区)。现在,在a2的error.log中,我在上述时间内每天都会看到以下错误:
419 ERROR [pool-6-thread-1] org.apache.sling.discovery.impl.cluster.ClusterViewServiceImpl getEstablishedView:现有已建立的视图尚未包含输入代码herelocal实例!确定隔离模式。
现在,我对此进行了一些研究,并且已经知道AEM用户ClusterViewServiceImpl.java
进行群集。在这方面,下面提到的代码片段基本上是失败的:
EstablishedClusterView clusterViewImpl = new EstablishedClusterView(
config, view, getSlingId());
boolean foundLocal = false;
for (Iterator<InstanceDescription> it = clusterViewImpl
.getInstances().iterator(); it.hasNext();) {
InstanceDescription instance = it.next();
if (instance.isLocal()) {
foundLocal = true;
break;
}
}
if (foundLocal) {
return clusterViewImpl;
} else {
logger.info("getEstablishedView: the existing established view does not incude the local instance yet! Assuming isolated mode.");
return getIsolatedClusterView();
}
有人可以帮助我更深入地了解相同的内容。这是否意味着,群集不能正常工作?由于此错误可能产生的影响是什么?
答案 0 :(得分:0)
我认为你有一个经典的裂脑病例。
群集作者不是一个好方法,并且在未来的AEM版本中一直不受欢迎,因为当他们无论出于何种原因(通常是暂时的网络相关)无法相互交谈时,作者经常会失去同步。相信我,他们很敏感。
当通信下降时,奴隶认为它不再拥有主人,并声称自己是主人。当发生这种情况并重新建立通信时,损坏已经完成,因为没有恢复机制。
充其量,只允许用户连接到主要作者并将次要作者作为高可用性服务器。
更好的是,从每个人都写入的主要作者设置复制,并在写入辅助备份作者时自动复制。
希望有所帮助。