我正在使用elasticsearch开发集成测试。一开始我像这样实例化客户端:
Settings settings = Settings.EMPTY;
Client client = new PreBuiltTransportClient(settings)
.addTransportAddress(new TransportAddress(InetAddress.getByName("localhost", "9300"));
elasticsearch服务器嵌入到docker容器中,具有以下环境变量:
- cluster.name=elasticsearch
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- xpack.security.enabled=false
- xpack.monitoring.enabled=false
- xpack.graph.enabled=false
- xpack.watcher.enabled=false
每次测试运行时,仅客户端创建就需要长达 20 秒的时间。
有什么办法可以加快速度吗? 谢谢。
默认情况下,Elasticsearch 使用两个端口监听外部 TCP 流量;
端口 9200 用于通过 HTTP 进行的所有 API 调用。这包括搜索和聚合、监控以及使用 HTTP 请求的任何其他内容。所有客户端库都将使用此端口与 Elasticsearch 通信 端口 9300 是一个自定义二进制协议,用于集群中节点之间的通信。对于集群更新、主选举、节点加入/离开、分片分配等事情