Dlhobežiace procesy na pozadí (Supervisor)
Supervisor úlohy sú procesy, ktoré majú bežať trvalo na pozadí – typicky Laravel queue worker (artisan queue:work), Laravel Horizon, Laravel plánovač spustený ako artisan schedule:work, alebo vlastný Node.js/Python proces. Na rozdiel od cron úloh, ktoré sa spustia, dobehnú a skončia, supervisor úloha beží nepretržite a systém ju sám reštartuje, ak spadne.
Kde ich nájdete
V https://panel.cloudweb.sk otvorte hosting a prejdite na kartu Vývoj, podzáložku Supervisor úlohy.
Vytvorenie úlohy
Kliknite na Pridať úlohu. K dispozícii sú šablóny na rýchly štart – Laravel Queue Worker, Laravel Horizon, Laravel Scheduler, Node.js Process a Python Process – ktoré predvyplnia príkaz aj odporúčané nastavenia; príkaz sa pritom prispôsobí koreňovému adresáru vášho hostingu. Formulár obsahuje:
- Názov – identifikátor úlohy (písmená, čísla, pomlčky, podčiarniky).
- Príkaz – čo sa má spustiť, napríklad
php /var/www/html/artisan queue:work --sleep=3 --tries=3. - Počet procesov – koľko kópií príkazu má bežať súbežne (1 až 10).
- Automatický štart – či sa má úloha spustiť hneď po synchronizácii/reštarte hostingu.
- Automatický reštart – či ju systém má sám naštartovať znova, keď spadne.
- Používateľ a voliteľne cesty k logom (predvolené cesty sa doplnia automaticky, ak ich nevyplníte) a premenné prostredia.
Riadenie behu
Pri každej úlohe v zozname máte k dispozícii:
- Spustiť / Zastaviť / Reštartovať – okamžite ovplyvní bežiaci proces na hostingu.
- Zobraziť logy – posledných 100 riadkov výstupu.
- Zapnúť/Vypnúť (prepínač) – mení, či je úloha vôbec súčasťou konfigurácie na pozadí.
- Upraviť a Zmazať.
- Synchronizovať na server – znova zapíše konfiguráciu všetkých úloh do prostredia hostingu; použite, ak si nie ste istí, že sa posledná zmena prejavila.
Zmena (pridanie, úprava, zapnutie/vypnutie, zmazanie) sa hneď po uložení automaticky nasynchronizuje do prostredia hostingu.
Pod akým používateľom bežia a počet procesov
Úloha beží pod rovnakým systémovým používateľom ako PHP-FPM a cron na danom hostingu: ak má hosting povolené SSH, je to vlastník webu, inak www-data. Počet súbežných procesov (pole „Počet procesov“) môžete nastaviť od 1 do 10 – vyšší počet znamená, že príkaz beží vo viacerých kópiách naraz (typicky viac queue workerov spracúvajúcich frontu súbežne).
Limity
Počet supervisor úloh nie je obmedzený tarifným programom. Príkaz nesmie obsahovať riadiace znaky ani shellové operátory (napríklad bodkočiarku, zvislítko, znak dolára, zátvorky) a slová eval/exec – supervisor úlohu spúšťa priamo, nie cez shell, preto reťazenie príkazov ani rúry nie je možné zapísať do tohto poľa. Príkaz si pred uložením môžete ručne vyskúšať vo webovom termináli; postup nasadenia Laravel aplikácie pred spustením workera je v článku Nasadenie Laravel aplikácie.
Bol tento článok užitočný?
Vaša spätná väzba nám pomáha zlepšovať dokumentáciu