1
我们是否必须为每个操作创建一个Client对象,或者在应用程序的生命周期中为所有操作使用唯一对象?ElasticSearch Java API:创建客户端
我们是否必须为每个操作创建一个Client对象,或者在应用程序的生命周期中为所有操作使用唯一对象?ElasticSearch Java API:创建客户端
您可以实例化一个TransportClient像documentation解释说:
TransportClient client = new PreBuiltTransportClient(Settings.EMPTY)
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host1"), 9300))
.addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("host2"), 9300));
该客户端实例继承了AbstractClient所有方法:
admin, bulk, bulk, clearScroll, clearScroll, count, count, delete,
delete, deleteIndexedScript, deleteIndexedScript, execute, execute, exists,
exists, explain, explain, fieldStats, fieldStats, get, get,
getIndexedScript, getIndexedScript, headers, index, index, multiGet, multiGet, multiPercolate, multiPercolate, multiSearch, multiSearch,
multiTermVectors, multiTermVectors, percolate, percolate, prepareBulk,
prepareClearScroll, prepareCount, prepareDelete, prepareDelete,
prepareDeleteIndexedScript, prepareDeleteIndexedScript, prepareExecute,
prepareExists, prepareExplain, prepareFieldStats, prepareGet,
prepareGet, prepareGetIndexedScript, prepareGetIndexedScript,
prepareIndex, prepareIndex, prepareIndex, prepareMultiGet,
prepareMultiPercolate, prepareMultiSearch, prepareMultiTermVectors,
preparePercolate, preparePutIndexedScript, preparePutIndexedScript,
prepareSearch, prepareSearchScroll, prepareSuggest, prepareTermVector,
prepareTermVector, prepareTermVectors, prepareTermVectors,
prepareUpdate, prepareUpdate, putIndexedScript, putIndexedScript,
search, search, searchScroll, searchScroll, settings, suggest, suggest,
termVector, termVector, termVectors, termVectors, threadPool, update,
update
因此,要回答你的问题;您可以多次重复使用同一个客户端对象。