没有服务器的Mongoid可以匹配首选项

abs*_*bsg 8 mongodb mongoid sidekiq

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

No server is available matching preference: #<Mongo::ServerSelector::Primary:0x70249928071560 tag_sets=[] server_selection_timeout=30 local_threshold=0.015>
Run Code Online (Sandbox Code Playgroud)

这似乎是随机发生的,而不是所有的时间.我的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
Run Code Online (Sandbox Code Playgroud)

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

小智 0

您应该检查 mongodb 是否实际运行。

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