Ich benutze Schienen 3.2 + Unicorn + Postgres DB und ich habe eine Frage - wie behandelt Einhorn DB-Verbindungen?Unicorn nicht schließen DB-Verbindungen
Wie verstehe ich:
- Einhorn-Master-Prozess Gabeln X Kindprozess.
- jedes Kind Prozess Setup DB-Verbindung schließen in before_fork, stellen Sie eine Verbindung in after_fork.
- verwenden wir Verbindung pro Prozess (wenn wir Schienen DB Verbindungspooling verwenden, erstellen wir Y (aus Datenbank.yml) DB-Verbindungen pro Prozess) - dh Wenn Prozess funktioniert (es funktioniert immer, bis wir es nicht töten) halten wir Verbindung geöffnet und jede Webanfrage verwendet dieselbe Verbindung (die in after_fork geöffnet wurde).
- geöffnete Verbindungen werden in Postgres (oder einem anderen DB) als inaktiv oder aktiv angezeigt.
Ist es richtig oder habe ich etwas verpasst?