2017-08-09 139 views
0

我正在使用elastic包爲golang。我想用它的BulkProcessor在後臺發送大量的文件。根據wiki的顯示,我可以創建一個處理器。但我不想每次發送文檔時都創建它。我想知道連接中是否存在處理器服務,並將數據傳遞給現有處理器而不是創建新處理器。我怎樣才能實現它?如何檢查ElasticSearch BulkProcessor服務是否存在

回答

0

從發送文件分別註冊批量處理器。大容量處理器的壽命與您的流程一樣長,因此爲確保您只創建一次,在流程啓動時創建它。然後在您的應用程序的其他地方,您可以隨時發送文檔。

另外,如果你必須這樣做點播,你可以使用一個sync.Once確保創建只會發生一次。