2017-08-09 137 views
0

我正在使用elastic包为golang。我想用它的BulkProcessor在后台发送大量的文件。根据wiki的显示,我可以创建一个处理器。但我不想每次发送文档时都创建它。我想知道连接中是否存在处理器服务,并将数据传递给现有处理器而不是创建新处理器。我怎样才能实现它?如何检查ElasticSearch BulkProcessor服务是否存在

回答

0

从发送文件分别注册批量处理器。大容量处理器的寿命与您的流程一样长,因此为确保您只创建一次,在流程启动时创建它。然后在您的应用程序的其他地方,您可以随时发送文档。

另外,如果你必须这样做点播,你可以使用一个sync.Once确保创建只会发生一次。