Unicorn és Gunicorn félelmetes eszközök az emberek írásban webes szolgáltatások Ruby és Python. Az egyik remek funkcióját a két program is képesek, hogy láthatóvá váljanak alkalmazás kódját on-the-fly, az ívás egy új mester folyamat (vagy "döntőbíró", a Gunicorn nyelvét), válaszul az operációs rendszer jelet (SIGUSR2). Sajnos, ez a visszatöltés összeegyeztethetetlen folyamat-tracking felügyelők, mint Upstart, mert a régi mester folyamat meghal részeként a reload.
unicornherder egy segédprogram célja, hogy segítse a használatát Upstart és hasonló felügyeleteiknek Unicorn. & nbsp; Teszi ezt lekérdezésével PidFile írta Unicorn fõ folyamat, és automatizálja a sorrend a jelek, hogy meg kell küldeni a mester csinálni a "hot-reload". Ha Unicorn kilép, úgy lesz az Unicorn Herder, ami azt jelenti, hogy ha felügyeli a pásztor (amely nem vonul a háttérbe), akkor hatékonyan felügyelő Unicorn folyamata.
Telepítés
Unicorn Herder elérhető a Python csomag Index, és lehet telepíteni a pip:
& Nbsp; pip telepíteni unicornherder
Használat
A gunicorn:
& Nbsp; unicornherder - -w 4 myapp: app
Az egyszarvú (a Bundler):
& Nbsp; bundle exec unicornherder -u egyszarvú
Jelek
Unicorn Herder továbbítja a következő jeleket az egyszarvú fõ folyamat:
INT QUIT TERM Ala p TTOU USR1 USR2
Nevezetesen, Unicorn Herder nem továbbítja SIGWINCH, mert nem kívánják daemonized.
Unicorn Herder is elfogja SIGHUP, mert ez a jel által küldött Upstart amikor telefonál initctl újratölteni, és arra használja, hogy kiváltsa a hot-reload annak Unicorn például. Ez a folyamat két percet, annak érdekében, hogy az új dolgozók időben elindul.
NB: Lesz egy időszak, hot-reload, ha a kérés kiszolgálása a régi és az új dolgozók. Ez lehet súlyos következményekkel járhat, ha fut az adatok közötti mozgások telepítésével változatai az alkalmazás. Kérjük, tartsa ezt szem előtt, amikor arról döntenek, ha kell használni Unicorn Herder hot-újratöltés funkció.
Upstart config
Egy példa felkapaszkodott config (kompatibilis Upstart v1.4 vagy újabb) használható Unicorn Herder az alábbiakban:
leírás "Unicorn Herder"
kezdődik futási [2345]
megállítani a futási [! 2345]
respawn
respawn limit 5 20
ENV PORT = 4567
setuidre www
setgid www
chdir / var / apps / myapp
exec bundle exec unicornherder -u egyszarvú - --port $ PORT
# Vagy egy gunicorn telepítést a virtualenv
# / Var / venv / myapp ...
#script
#. / Var / venv / myapp / bin / aktiválni
# Exec unicornherder - -w 4 -b "127.0.0.1:$PORT" myapp: app
#end script
követelmények :
- Python
Hozzászólás nem található