【问题标题】:Cast the Elasticsearch.Net client to the standard Nest client将 Elasticsearch.Net 客户端转换为标准 Nest 客户端
【发布时间】:2014-12-21 20:26:05
【问题描述】:

我看到 Elasticsearch.Net 客户端支持故障转移连接。有没有办法将此客户端转换为标准的 Nest 客户端?

我已经使用 Nest 构建了所有的映射、搜索和索引。我正在寻找一种方法来支持故障转移连接,而不必重做我迄今为止所做的一切。

我尝试过典型的铸造方法。下面的两个 sn-ps 都是无效的强制转换。

var client = new ElasticsearchClient(config);
return (ElasticClient)client;

var client = new ElasticsearchClient(config);
return client as ElasticClient;

【问题讨论】:

    标签: elasticsearch nest


    【解决方案1】:

    您不需要强制转换 ElasticClient,因为它已经建立在 ElasticseachClient 之上,并且支持通过连接池进行故障转移。来自Nest - Connecting Documentation:

    如果您想要一个故障转移客户端而不是传递一个 Uri 传递一个 IConnectionPool,请参阅Elasticsearch.Net documentation on cluster failover,它的所有实现也可以与 NEST 一起使用。

    【讨论】:

      【解决方案2】:

      我不确定这是否有帮助,但如果您使用 NestClient,您还可以像这样访问较低级别的 Elasticsearch 客户端

          var client = new ElasticClient(settings);
          var rawClient = client.Raw;  
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-12-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-22
        相关资源
        最近更新 更多