Teď už se docela vzdalujeme od původního Jardova dotazu, měl bych k tomu pár připomínek:
- proč supervisord a ne systemd? Síla zvyku/již hotová infrastruktura, nebo systemd nepoužíváte úmyslně? - pokud budete chtít izolovat projekty trochu víc než jen venvem a použijete proto Docker (nebo jinou kontejnerovou technologii), tak je podle mě nejjednodušší pustit v Dockeru gunicorn a nasměrovat na něj systémový nginx (popř. Apache, ideálně s event MPM). - dá se mod_wsgi kombinovat s asyncio? Pokud nepoužijete mod_wsgi, tak opět, stačí vám akorát spustit aiohttp server a nakonfigurovat proxy v nginxu (popř. Apache). PM Dne 26. ledna 2018 12:16 Ales Zoulek <ales.zou...@gmail.com> napsal(a): > Rozdeleni stacku na > - Web Server > - Supervisord, v nem: > - Gunicorn (bezici wsgi django/flask) + Celery nebo jiny job worker > > Ma fakt hrozne moc vyhod. Pro sysadminy i developery, ktery roli adminu > musi obas zastat. Napr. > * oddelena (a tedy typicky prehledneji) konfigurace, > * oddeleny procesy (lze restartovat postupne jednotlive django workery, > aniz by to ovlivnilo server, popr. pokud prvni worker nenabehne kvuli > chybe, neshodite cely web), > * snazsi a explcitnejsi nastaveni venvu > * moznost bezet pod stejnou strechou ne-wsgi procesy z projektu (celery, > nebo pravidelny cron-like scripty), takze mate na jednom miste v supervisor > configuraci vsechny entrypointy projektu > * nejste vazani na apache (nginx napr je ) > .... > > Je toho fakt hodne, ale vsechno je to jen variace na tema separation of > concerns. > > Prikladu na webu je hodne a hodne (viz treba https://gist.github.com/ > laborautonomo/f9591d15f0c40dcd50785a42e21c2228 ). Myslim, ze jsme se o > tom i nekolikrat bavili na prazskym Pyvu :) > > A. > > On Fri, Jan 26, 2018 at 11:03 AM Jachym Cepicky <jachym.cepi...@gmail.com> > wrote: > >> no, to je spíš otázka na sysadminy, já se snažím se v tom moc nevrtat, >> ale bojím se, že občas mě to nemine >> >> pá 26. 1. 2018 v 10:09 odesílatel Vláďa Macek <ma...@sandbox.cz> napsal: >> >>> On 26.1.2018 08:44, starenka . wrote: >>> > A jak pod mod_wsgi behate rq nebo celery? >>> >>> Nepouzivam. Na podobny pozadavky angazuju jine nastroje. >>> >>> > Me se libi ta oddelenost: python-neco, co ho spusti-socket-http/proxy. >>> > Supervisor se imo konfiguruje a udrzuje o dost jednodusejc, nez >>> vhosty... >>> > (ano, vhost stejne potrebujete, ale minimalni - tj. cti socket, davej >>> > statiky). >>> >>> Presne tak (i kdyz nevim, jestli pouziju supervisor, teprve se na zmenu >>> chystam). >>> >>> mod_wsgi styl (ac ho jak jsem psal pouzivam mnoho let) neni moc "unixy", >>> tim myslim, ze pro Django je to trochu smichanina. Vlastne si v configu >>> Apache nasmerovanim na knihovny ve virtualenvu definujete znovu >>> virtualenv >>> a do mod_wsgi zakompilovanemu interpretu, ktery nemuzete obvykle >>> ovlivnit, >>> rikate "tady to je navic". >>> >>> Init Django stacku probiha jinak z mod_wsgi a jinak z management >>> commandu, >>> ktere jsou na mych projektech zasadni. Nerikam, ze se s tim rozdilem neda >>> naucit zit. Da, ale obcas to cloveka pokouse a obvykle se to stane ve >>> vypjatych chvilich, kdy klient zacina zvedat oboci. >>> >>> Takze od oddeleni webserveru a runtimu si slibuju sjednoceni a jistejsi >>> kompetence. gunicorn je IIRC pure-python uvnitr projektoveho izolovaneho >>> virtualenvu, takze se vse spousti naprosto stejne. >>> >>> V. >>> >>> -- >>> -- >>> E-mailová skupina django-cs@googlegroups.com >>> Správa: http://groups.google.cz/group/django-cs >>> --- >>> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny >>> django-cs ve Skupinách Google. >>> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, >>> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. >>> Chcete-li zobrazit tuto diskusi na webu, navštivte >>> https://groups.google.com/d/msgid/django-cs/28aab262-7d9e- >>> 899d-63ba-b15e9eef8449%40sandbox.cz. >>> Další možnosti najdete na adrese https://groups.google.com/d/optout. >>> >> -- >> -- >> E-mailová skupina django-cs@googlegroups.com >> Správa: http://groups.google.cz/group/django-cs >> --- >> Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny >> „django-cs“ ve Skupinách Google. >> Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, >> zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. >> Chcete-li tuto diskusi zobrazit na webu, navštivte >> https://groups.google.com/d/msgid/django-cs/CAAZUH4HcimeT1CdT8_ >> cVOFC6d5q0oFJ20jGw2O0OTG-rPn2wKQ%40mail.gmail.com >> <https://groups.google.com/d/msgid/django-cs/CAAZUH4HcimeT1CdT8_cVOFC6d5q0oFJ20jGw2O0OTG-rPn2wKQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> Další možnosti najdete na https://groups.google.com/d/optout. >> > -- > -- > E-mailová skupina django-cs@googlegroups.com > Správa: http://groups.google.cz/group/django-cs > --- > Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny > „django-cs“ ve Skupinách Google. > Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, > zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. > Chcete-li tuto diskusi zobrazit na webu, navštivte > https://groups.google.com/d/msgid/django-cs/CA%2BvQZ8qJOnbL1JH- > cpRnQeQPW8oaL2ebZv7GwbobDEp9C0P%3DXg%40mail.gmail.com > <https://groups.google.com/d/msgid/django-cs/CA%2BvQZ8qJOnbL1JH-cpRnQeQPW8oaL2ebZv7GwbobDEp9C0P%3DXg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > Další možnosti najdete na https://groups.google.com/d/optout. > -- -- E-mailová skupina django-cs@googlegroups.com Správa: http://groups.google.cz/group/django-cs --- Tuto zprávu jste obdrželi, protože jste přihlášeni k odběru skupiny django-cs ve Skupinách Google. Chcete-li zrušit odběr skupiny a přestat dostávat e-maily ze skupiny, zašlete e-mail na adresu django-cs+unsubscr...@googlegroups.com. Chcete-li zobrazit tuto diskusi na webu, navštivte https://groups.google.com/d/msgid/django-cs/CAK9Q5BTTkinQkb4HGJv5Tq28JG4WdTU3SYp%2BQ50necfJ7PVRRw%40mail.gmail.com. Další možnosti najdete na adrese https://groups.google.com/d/optout.