SpringBoot 配置类配置 ElasticSearch

@Bean
    public ElasticsearchRestTemplate elasticsearchRestTemplate(){
        RestClientBuilder builder = RestClient.builder(new HttpHost("10.231.3.147", 12000));

        final CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
        /*设置账号密码*/
        credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials("elastic","y1i9ndbrFNGcDxUAFyB7"));

        builder.setHttpClientConfigCallback(httpAsyncClientBuilder -> {
            //设置账号密码等
            httpAsyncClientBuilder.setDefaultCredentialsProvider(credentialsProvider);
            //最大连接数
            httpAsyncClientBuilder.setMaxConnTotal(5);
            //每5分钟发生一次心跳保持连接
            httpAsyncClientBuilder.setKeepAliveStrategy((response, context) -> 		Duration.ofMinutes(5).toMillis());

            return httpAsyncClientBuilder;
        });

        RestHighLevelClient restHighLevelClient = new RestHighLevelClient(builder);
        return new ElasticsearchRestTemplate(restHighLevelClient);
    }
posted @ 2021-07-07 09:33  gudian  阅读(266)  评论(0)    收藏  举报