【问题标题】:Configuring ElasticClient connection pooling配置 ElasticClient 连接池
【发布时间】:2015-01-29 14:15:50
【问题描述】:

我目前正在更新我们的 elasticsearch 代码以使用 Nest 的 IElasticClient 提供的内置连接池。所以在我们使用之前

var settings = new ConnectionSettings(new Uri(connString));
var esClient = new ElasticClient(settings);

现在我希望能够像这样传入配置的连接池(如Nest's docs 中所述)

var connectionPool = new SniffingConnectionPool(new[] { new Uri(connString});
var config = new ConnectionConfiguration(connectionPool);
                     .SniffOnConnectionFault(false)
                     .SniffOnStartup(false)
                     .SniffLifeSpan(TimeSpan.FromMinutes(1));
var client = new ElasticsearchClient(config);

但是,他们使用原始的 ElasticsearchClient 来执行此操作。 Nest 的 ElasticClient 构造函数不提供传递 ConnectionConfiguration 的能力,只能传递 ConnectionPool。

有人知道如何将 ConnectionConfiguration 与 ElasticClient 一起使用吗?

【问题讨论】:

    标签: elasticsearch nest


    【解决方案1】:

    您可以为此使用Nest.ConnectionSettings。请看下面的代码:

    var connectionPool = new SniffingConnectionPool(new[] { new Uri(connString});
    var config = new ConnectionSettings(connectionPool)
        .SniffOnConnectionFault(false)
        .SniffOnStartup(false)
        .SniffLifeSpan(TimeSpan.FromMinutes(1));
    var client = new ElasticClient(config);
    

    【讨论】:

    • 它就在我的鼻子前面。感谢您的帮助@bsarkar。
    猜你喜欢
    • 1970-01-01
    • 2013-10-22
    • 1970-01-01
    • 1970-01-01
    • 2015-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-26
    相关资源
    最近更新 更多