[英]Can Elasticsearch Java client be updated in run-time?
我正在使用由我的應用程序啟動時由Spring初始化的Elasticsearch RestHighLevelClient
bean。 現在,我想讓用戶能夠在運行時更改與Elasticsearch的連接。
我想知道是否有任何優雅的方法來更新從Java客戶端(低級或高級)到Elasticsearch節點的連接。 優雅地說,我的意思是不必為每個操作都重新打開客戶端,也不必帶有標記來通知有更新。
我認為Elasticsearch不會有這種可能性。
您正在尋找的解決方案可以是Connection Pool
。 如前所述,您希望避免為每個操作重新打開連接, Connection Pool
允許您保留一些打開的連接。 這是管理許多數據庫連接的常用模式。
您可以在Spring配置中定義幾個ES客戶端bean並進行限定(例如@Qualifier("one")
)。 然后,在運行時,您可以使用ApplicationContext#getBean()
方法手動查找最佳客戶端。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.