我一直在开发一个他们使用SolrCloud的系统,该系统需要一个Zookeeper集合来帮助
"管理整体结构,以便索引和搜索请求可以被正确地路由";
我有3个Z节点。我应该使用哪个节点作为搜索请求的API。如果它掉下来怎么办?Zookeeper如何将我代码中的IP更改为另一个Z节点?
我知道这样不行!但我正在努力想办法。
如果您使用带有zookeeper集成的solr云,并使用Java进行连接。
您可以使用java代码获得如下连接。
CloudSolrClient solrClient;
@SuppressWarnings("deprecation")
public CloudSolrClient createConnection(){
//You need to replace SERVERNAME with the server on which the zookeeper is running
String zkHostString = "SERVERNAME:PORT,SERVERNAME:PORT,SERVERNAME:PORT";
if(solrClient == null){
solrClient = new CloudSolrClient.Builder().withZkHost(zkHostString).build();
}
return solrClient;
}
在这里,您需要传递所有正在运行以管理solr服务器的zookeeper节点。您也可以为您的应用程序使用springboot,在中您可以将zk主机配置为application.properties的一部分