Konfiguracja Rails, Mongoid i Unicorn dla Heroku
Używam Mongoid 3, z Rails 3.2.9 i Unicorn do produkcji. Czy chcesz ustawić before_fork i after_fork dla połączenia z mongodbem, znalazł następujący kod dla aktywnego rekordu:
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 (do podłączenia i rozłączenia)?
Aktualizacja:
Nie musisz tego robić, więc dla osób odwiedzających to pytanie zobacz:
http://mongoid.org/en/mongoid/docs/rails.html
„Jednorożec i pasażer
Podczas korzystania z Unicorn lub Passenger, za każdym razem, gdy proces potomny jest rozwidlany podczas używania wstępnego ładowania aplikacji lub inteligentnego odradzania, Mongoid automatycznie połączy się ponownie z bazą danych master. Jeśli robisz to ręcznie w swojej aplikacji, możesz usunąć swój kod. ”
Chociaż nadal byłoby interesujące wiedzieć, jaki byłby równoważny kod Mongoida.