2

我正在使用 Tire Gem 作为 Elasticsearch 的客户端进行批量索引

index = Tire::Index.new('oldskool')
index.bulk_store(bulk_values)

我使用 http 监控 API 监控 Elasticsearch 集群上的 HTTP 连接,

curl 'localhost:9200/_nodes/http/stats'

在我得到的 JSON 响应中,

..."http":{"current_open" : 10, "total_opened" : 18345}

我观察到“total_opened”字段值继续迅速增加。我认为这意味着轮胎宝石在批量索引时没有使用持久连接(如果我错了,请纠正我)。

在进行批量索引时,如何使用 Tire Gem 与 Elasticsearch 建立持久连接?

4

1 回答 1

1

默认情况下Tire使用RestClient不支持keep-alive. 您可以通过像这样的配置来切换到遏制客户端。Tire

require 'tire/http/clients/curb'
Tire.configure do
  client Tire::HTTP::Client::Curb
end
于 2013-11-15T10:24:57.660 回答