Używam Mongoid 3, z Rails 3.2.9 i Unicorn do produkcji. Chciałby, aby ustawić się before_fork & after_fork za połączenie MongoDB, stwierdzono następujący kod do aktywnego rekordu:Rails, Mongoid i Unicorn config dla Heroku
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
Jaki jest odpowiedni kod dla Mongoid (podłączyć i odłączyć)?
Aktualizacja:
You dont rzeczywiście trzeba to zrobić, tak aby ludzie, którzy przychodzą, by zobaczyć to pytanie patrz:
http://mongoid.org/en/mongoid/docs/rails.html
„Unicorn i pasażera
Podczas korzystania Unicorn lub Pasażer, za każdym razem, gdy proces potomny jest rozwidlany przy użyciu wstępnego załadowania aplikacji lub inteligentnego tarła, Mongoid automatycznie ponownie połączy się z główną bazą danych. W tej aplikacji ręcznie możesz usunąć swój kod. "
Chociaż nadal byłoby interesujące wiedzieć, jaki byłby równoważny kod Mongoida.
należy umieścić aktualizacji w odpowiedzi poniżej i przyjmuję je :) – gef