我欢迎任何关于简单问题的帮助:我有集群环境,并且我在属性 ( lucene.replicate.write=true
) 中启用了 Lucene 复制。现在,所有的教程都在指导我重新索引 Lucene。
我应该在一个节点上运行它吗?双方?同时还是依次?
Liferay 论坛中也有人问过这个问题:https ://www.liferay.com/community/forums/-/message_boards/view_message/69175435 。
谢谢!
我欢迎任何关于简单问题的帮助:我有集群环境,并且我在属性 ( lucene.replicate.write=true
) 中启用了 Lucene 复制。现在,所有的教程都在指导我重新索引 Lucene。
我应该在一个节点上运行它吗?双方?同时还是依次?
Liferay 论坛中也有人问过这个问题:https ://www.liferay.com/community/forums/-/message_boards/view_message/69175435 。
谢谢!
基本上我一开始做的是:
cluster.link.enabled=true
lucene.replicate.write=true
结果是不工作的复制。
我接下来尝试的是克服这个问题并继续对门户的其余部分进行聚类,这最终也有助于 lucene。我的进步是:
门户-ext.properties:
cluster.link.enabled=true
cluster.link.autodetect.address=<COMMONLY_ACCESSIBLE_IP_AND_PORT>
lucene.commit.batch.size=1
lucene.commit.time.interval=5000
lucene.replicate.write=true
ehcache.cluster.link.replication.enabled=true
cluster.link.channel.properties.control=<PATH_TO_XML>
cluster.link.channel.properties.transport.0=<PATH_TO_XML>
portal.instance.protocol=http
portal.instance.http.port=8080
设置环境文件
-Djava.net.preferIPv4Stack=true
-Djgroups.bind_addr=<IP_OF_THE_NODE>
最后, Lucene复制正在运行。我认为可能重要的是跟随。首先,portal.properties 对键lucene.commit.*
的解释有点难以理解。通过反复试验,我发现这两个键是 AND 关系。此外,我发现了portal.instance.*
在集群中用于多种用途的密钥,如果节点之间有负载均衡器和/或 Apache 并且自动检测失败,这些密钥可能很重要。
在 Liferay 中有多种配置搜索集群的方法。如果您使用这种lucene.replicate.write=true
方式,您正在查看多次重新索引运行:在每次重新启动服务器时,您必须重新索引该服务器的文档,因为它可能在停机时错过了索引请求。
所以,简短的回答:别担心,重新索引两者。不管你现在是否只需要一个,迟早你都会这样做。