2013-02-27 7 views
31

Ich verwende Mongoid 3, mit Rails 3.2.9 und Unicorn für die Produktion. Möchten eine before_fork & after_fork die Einrichtung für die Verbindung MongoDB, fand den folgenden Code für aktiven Datensatz:Rails, Mongoid & Unicorn Config für 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 

Was ist der entsprechende Code für Mongoid (zu verbinden und zu trennen)?

Update:

Sie brauchen nicht wirklich, dies zu tun, so für die Menschen sehen, diese Frage zu sehen kommen:

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

„Einhorn und Passagier

Wenn Einhorn mit oder Passagier, Mongoid wird jedes Mal, wenn ein Kindprozess bei Verwendung von App-Preloading oder Smart-Launching gegabelt wird, automatisch wieder mit der Master-Datenbank verbinden Wenn Sie dies in Ihrer Anwendung manuell eingeben, können Sie Ihren Code entfernen. "

Obwohl es immer noch interessant wäre zu wissen, was wäre der äquivalente Mongoid-Code.

+0

Sie Update in der Antwort setzen sollte unten und es akzeptieren :) – gef

Antwort

19

Sie brauchen nicht wirklich, dies zu tun, so für die Menschen sieht, diese Frage zu sehen kommen:

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

„Einhorn und Passagier

Wenn Einhorn oder Passagier mit, jedes Mal, wenn ein Kind-Prozess Wird bei der Verwendung von App-Preloading oder Smart-Launching verzweigt, stellt Mongoid automatisch wieder eine Verbindung zur Master-Datenbank her. Wenn Sie dies in Ihrer Anwendung manuell tun, können Sie Ihren Code entfernen. "

Obwohl es immer noch interessant wäre zu wissen, was wäre der äquivalente Mongoid-Code.

0

Was ::Mongoid.default_session.connect ::Mongoid.default_session.disconnect

Verwandte Themen