我正在使用Mongoid 3、Rails 3.2.9和Unicorn进行生产.想在fork&在连接到mongodb后,找到以下活动记录代码:

before_fork do |server, worker|
  # Replace with MongoDB or whatever
  if defined?(ActiveRecord::Base)
    ActiveRecord::Base.connection.disconnect!
    Rails.logger.info('Disconnected from ActiveRecord')
  end
end

after_fork do |server, worker|
  # Replace with MongoDB or whatever
  if defined?(ActiveRecord::Base)
    ActiveRecord::Base.establish_connection
    Rails.logger.info('Connected to ActiveRecord')
  end
end

Mongoid(连接和断开连接)的相关代码是什么?

Update:

你实际上不需要这样做,所以对于前来查看此问题的人,请参见:

http://mongoid.org/en/mongoid/docs/rails.html

"独角兽和乘客

当使用Unicorn或Passenger时,每次在使用应用程序预加载或智能生成时分支子进程时,Mongoid都会自动重新连接到主数据库.如果在应用程序中手动执行此操作,则可以删除代码."

尽管知道什么是等效的Mongoid代码仍然很有趣.

推荐答案

你实际上不需要这样做,所以对于前来查看此问题的人,请参见:

http://mongoid.org/en/mongoid/docs/rails.html

"独角兽和乘客

当使用Unicorn或Passenger时,每次在使用应用程序预加载或智能生成时分支子进程时,Mongoid都会自动重新连接到主数据库.如果在应用程序中手动执行此操作,则可以删除代码."

尽管知道什么是等效的Mongoid代码仍然很有趣.

Mongodb相关问答推荐

如何限制/筛选子文档中的条目?

在MongoDB Aggregate for My BooksDB中将`$match`放在`$unwin`之前或之后的区别

MongoDB查询优化

判断对象数组中的值是否存在golang

MongoDB - 家庭作业(job)帮助.不确定如何在 mongodb 中访问文档中的变量

查询有关 Go 项目中对象数组的 MongoDb 集合

有谁知道这个错误的修复方法(TypeError: Cannot assign to read only property ‘map’ of object '#')

增加嵌套对象中的值?

如何使用 mongoose 从 MongoDb 获取数据?

具有最佳插入/秒性能的数据库?

为什么 local.oplog.rs 上每隔几分钟的活动就会锁定 mongo 客户端

mongodb无法启动

在 Mongoose 中填写所有必填字段

有没有办法自动更新 MongoDB 中的两个集合?

REACT 获取发布请求

MongoDB 日志(log)文件和 oplog 有何不同?

docker 在不同的端口上运行 mongo 映像

如何在 MongoDB 的 $match 中使用聚合运算符(例如 $year 或 $dayOfMonth)?

Mongoose:Model.create 和 Collection.insert 有什么区别

如何使用 Spring 的 MongoTemplate 和 Query 类检索字段子集?