小编Har*_*pta的帖子

突然出现这个错误 java.lang.IllegalStateException: Request无法执行;I/O反应器状态:已停止

我正在使用httpcore-nio-4.4.5.jar。我正在使用elasticsearch RestHighLevelClient 与我们的elasticsearch 服务器交互。这一切都工作正常,除了有时我们会突然出现 I/O 反应器停止错误。

ES 方面一切似乎都很好。没有奇怪的行为。

这就是我初始化 ES 客户端的方式。

public synchronized RestHighLevelClient getHighLevelClient() throws ManagerException {
        if (highLevelClient != null) {
            return highLevelClient;
        }

        Map<String, Integer> map = getEsServers(esAddresses);

        HttpHost[] hosts = new HttpHost[map.size()];

        int i = 0;

        for (Map.Entry<String, Integer> entry : map.entrySet()) {
            hosts[i++] = new HttpHost(entry.getKey(), entry.getValue(), "http");
            LOGGER.info(entry.getKey() + " " + entry.getValue());
        }

        RestClientBuilder restClientBuilder = RestClient.builder(hosts);
        highLevelClient = customizeHttpClient(restClientBuilder);
        return highLevelClient;
    }
Run Code Online (Sandbox Code Playgroud)
public RestHighLevelClient customizeHttpClient(RestClientBuilder restClientBuilder) {
        Header[] defaultHeaders = new Header[2]; …
Run Code Online (Sandbox Code Playgroud)

java nio elasticsearch apache-httpasyncclient

5
推荐指数
1
解决办法
6994
查看次数

标签 统计

apache-httpasyncclient ×1

elasticsearch ×1

java ×1

nio ×1