# Java 使用 RestHighLevelClient 调用慢

**URL:** <https://discuss.elastic.co/t/java-resthighlevelclient/233307>\
**Category:** 中文提问与讨论\
**Created:** [May 19, 2020, 11:48am UTC](https://discuss.elastic.co/t/java-resthighlevelclient/233307 "2020-05-19T11:48:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![peiqing\_xu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/peiqing_xu/32/68628_2.png) [@peiqing\_xu](https://discuss.elastic.co/u/peiqing_xu)\
**Post date:** [May 19, 2020, 11:48am UTC](https://discuss.elastic.co/t/java-resthighlevelclient/233307/1 "2020-05-19T11:48:40Z")

</div>

直接使用 postman 调用 用时一秒

```auto
http://106.13.148.210:9200/_search
{
  "query": {
    "match": {
      "book_id": {
        "query": 87,
        "operator": "OR",
        "prefix_length": 0,
        "max_expansions": 50,
        "fuzzy_transpositions": true,
        "lenient": false,
        "zero_terms_query": "NONE",
        "auto_generate_synonyms_phrase_query": true,
        "boost": 1
      }
    }
  },
  "size": 500
}

使用 java 代码 8 秒多
    /* SearchRequest searchRequest = new SearchRequest("web_book_chapter");
        SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
        MatchQueryBuilder matchQueryBuilder = QueryBuilders.matchQuery("book_id", 48);
        // matchQueryBuilder.
        sourceBuilder.query(matchQueryBuilder);

        sourceBuilder.size(200);
        System.out.println(sourceBuilder.toString());
        sourceBuilder.timeout(new TimeValue(60, TimeUnit.SECONDS));
        searchRequest.source(sourceBuilder);
        long startTime=System.currentTimeMillis();
        try {

            SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
            long endTime=System.currentTimeMillis();
            System.out.println("程序运行时间： "+(endTime - startTime)+"ms");
            SearchHits hits = searchResponse.getHits();
            SearchHit[] searchHits = hits.getHits();
            for (SearchHit hit : searchHits) {
                String sourceAsString = hit.getSourceAsString();
                BookChapterModel bookChapterModel = JSON.parseObject(sourceAsString, BookChapterModel.class);
                list.add(bookChapterModel);
            }

        }catch (Exception e){
            e.printStackTrace();
        }
        
        
            @Bean
    public RestHighLevelClient restHighLevelClient(){
        long startTime=System.currentTimeMillis();
        RestHighLevelClient restHighLevelClient = new RestHighLevelClient(
                RestClient.builder(
                        new HttpHost("106.13.148.210", 9200,"http")
                )
        );

        long endTime=System.currentTimeMillis();
        System.out.println("初始化客户端时间： "+(endTime - startTime)+"ms");
        return restHighLevelClient;
    }

```

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [June 16, 2020, 11:48am UTC](https://discuss.elastic.co/t/java-resthighlevelclient/233307/2 "2020-06-16T11:48:41Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
