什么是动态连接mongoid的正确方法?

时间:2017-11-08 11:09:22

标签: ruby-on-rails mongoid mongoid5

我正在使用mongoid orm并尝试动态建立连接。

def establish_mongo_connection publish_detail
  Mongoid.disconnect_clients
  Mongoid.clients.clear
  Mongoid.configure do |config|
    a = config.connect_to publish_detail.server.database_name, auth_source: 'admin', auth_mech: :scram
  end
  Mongoid.clients[:default][:hosts] = "mongodb://#{publish_detail.server.database_user}:#{publish_detail.server.database_password}@#{publish_detail.server.database_connection}"
end

建立连接后,我正在做业务逻辑,最后保存记录(通过MongoID模型对象)。

整个处理和保存对象大约需要10-12秒。

问题是有时记录会保存在不同的mongo服务器中,而不是预期的。

我正在运行2个puma服务器实例。

本地一切正常,但在服务器上行为不端。

如果我做错了,请告诉我这是否有更正确的方法。

提前致谢:)

0 个答案:

没有答案