1

知りたいのですがnode.close()、クエリ/検索プロセスが終了するたびに電話する必要client.close()がありますか?それとも問題ありませんか? これが私のコードです:

val node =nodeBuilder().client(true).node()
val client =node.client()
val query = QueryBuilders.matchQuery(fieldName.toString(), q).fuzziness(Fuzziness.AUTO)//user can make 2 typo mistakes

val response = client.prepareSearch("arteciatedb")
      .setTypes("readOnlyAdmin")
      .setSearchType(SearchType.DFS_QUERY_THEN_FETCH)
      .addFields("uuid","FirstName","LastName","Email","SecondryEmail","UserStatus","_source")
      .setQuery(query)
      .execute()
      .actionGet()


 val hits = response.getHits

 totalHits=hits.getTotalHits
log.info("total search result {}",)   
client.close()
node.close()

このコードを頻繁に実行しています。そのため、node.close()次にこのコードを実行すると、ノードが再度起動されます (検索応答の遅延が発生します)。これは望ましくありません。node.close()この検索コードを頻繁に呼び出す必要がある場合に、正しいことを行うかどうかを知りたいです。

4

1 に答える 1