Конфигурации Rails, Mongoid и Unicorn для Heroku
Я использую Mongoid 3, с Rails 3.2.9 и Unicorn для производства. Хотелось бы настроить before_fork & after_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 (для подключения и отключения)?
Обновить:
Вам на самом деле не нужно делать это, поэтому для людей, которые приходят посмотреть этот вопрос, смотрите:
http://mongoid.org/en/mongoid/docs/rails.html
"Единорог и Пассажир"
При использовании Unicorn или Passenger каждый раз, когда дочерний процесс разветвляется при использовании предварительной загрузки приложения или умного порождения, Mongoid автоматически переподключается к базе данных master. Если вы делаете это в своем приложении вручную, вы можете удалить свой код ».
Хотя было бы интересно узнать, какой будет эквивалентный монгоидный код.