mongodb - Mongoid 没有服务器可用匹配首选项

当我尝试对数据库执行查询时,我有一堆正在运行的 sidekiq 作业失败并出现以下错误:

No server is available matching preference: #<Mongo::ServerSelector::Primary:0x70249928071560 tag_sets=[] server_selection_timeout=30 local_threshold=0.015>

这似乎是随机发生的,而不是一直发生。我的 mongoid.yml 结构如下:

hosts:
    - XX.XXX.XXX.X:27000
    - XX.XXX.XXX.XXX:27000
  database: acbde__production
  options:
    connect_timeout: 20
    read:
      mode: :secondary
    max_pool_size: 800
    replica_set: acbdeReplset

以前有人遇到过这个问题吗?

最佳答案

你应该检查 mongodb 是否真的在运行。

您可以使用 mongo --host IP --port PORT 来检查连接。

https://stackoverflow.com/questions/34876180/

相关文章:

mongodb - 玩 2.3.5 和 ReactiveMongo : MongoError ['N

mongodb - Mongo中的SocketException

mongodb - 为什么 MongoDB 在负载测试期间没有响应?

mongodb - 如何验证由 mongodump 操作产生的文件的完整性?

ruby-on-rails - Moped::Errors::OperationFailure 失败

spring - 蒙戈 : repositories no longer works

mongodb - 对于只有部分数据易失的非常大的数据集,MongoDB 如何叠加

python - 如何在mongoengine中按oid搜索文档

javascript - 不确定如何在 Express/MongoDB 应用程序中处理数据访问对象/

php - 在 PHP 中重命名 Mongo 集合