Jellemzők:
Az alábbiakban a Laravel horizont néhány fontos jellemzőjét említjük:
- Ez egy nyílt forráskódú csomag
- Ez egy gyönyörű műszerfal segítségével mutatja az összes várólistát és a munkahelyi információkat.
- Információt nyújt a függőben lévő, befejezett és sikertelen munkákról.
- Mutatók segítségével várakozási sorokat és munkakörülmények adatait biztosítja.
- Címkék használatával figyeli a feladatokat.
Horizon parancsok:
Néhány horizont parancsot az alábbiakban említünk a futó horizont irányításához.
A következő paranccsal szüneteltetheti a horizont folyamatát.
$ php kézműves horizont: szünetA következő paranccsal folytathatja a szüneteltetett horizont folyamatot.
$ php kézműves horizont: folytassaA következő paranccsal ellenőrizhető a horizont folyamat jelenlegi állapota.
$ php kézműves horizont: állapotA következő parancsot használjuk a horizont folyamat leállítására. A láthatár az összes futó munka befejezése után megszűnik.
$ php kézműves horizont: megszűnikA Horizon telepítése:
Előfeltételek:
A horizont telepítésének megkezdése előtt új projektet kell telepítenie a Laravel legújabb verziójával. A lépéseket itt mutatjuk be a Laravel 8 használatával.x.
Telepítési folyamat:
Futtassa a következő parancsot a terminálról a horizon csomag telepítéséhez a zeneszerző segítségével.
$ zeneszerző igényel laravel / horizontotA Horizon telepítése után tegye közzé eszközeit a horizon: install artisan paranccsal:
$ php kézműves horizont: telepítéspredis csomag ebben az oktatóanyagban használható a predis Redis kliensként való használatára . Futtassa a következő parancsot a predis csomag telepítéséhez a zeneszerző használatával.
$ zeneszerző predis / predis szükségesnyisd ki adatbázis.php fájl alatt található a konfig mappát, és állítsa be a ügyfél az alábbiak szerint.
'ügyfél' => env ('REDIS_CLIENT', 'predis'),A horizont megkezdése előtt futtassa a következő parancsot a gyorsítótár törléséhez.
$ php kézműves gyorsítótár: tisztaA horizont elindításához futtassa a következő parancsot.
$ php kézműves horizontA következő kimenet jelenik meg, ha a horizont telepítve van és megfelelően működik.
Kód alapú konfiguráció:
Lehetőséget nyújt arra, hogy a várólistákkal való munka során könnyen együttműködhessen a projektcsapat tagjaival. Különféle típusú beállítások adhatók meg a queue: work artisan paranccsal. konfig / horizont.A php konfigurációs fájlt különböző konfigurációk beállítására használják. Nyisd ki horizont.php fájlt az alapértelmezett beállítások ellenőrzéséhez. A A várólista munkájának beállítása Ennek a fájlnak a szakasza a következő beállítást tartalmazza.
'alapértelmezett' => ['felügyelő-1' => [
'connection' => 'redis',
'queue' => ['alapértelmezett'],
'balance' => 'auto',
'maxProcesses' => 1,
'próbálkozik' => 1,
'szép' => 0,
],
],
'környezetek' => [
'termelés' => [
'felügyelő-1' => [
'maxProcesses' => 10,
'balanceMaxShift' => 1,
'balanceCooldown' => 3,
],
],
'helyi' => [
'felügyelő-1' => [
'maxProcesses' => 3,
],
],
],
Itt az egyenleg értéke lehet egyszerű vagy auto vagy nulla. Mikor egyszerű egyensúlyra van állítva, akkor a folyamat két sor között oszlik meg. Mikor az auto egyensúlyra van beállítva, akkor a fennmaradó munkahelyek és az átlagos várakozási idő alapján kiegyensúlyozza a sorban dolgozókat. Ha valamelyik sor elfoglalt, akkor a horizont megkeresi a rendelkezésre álló munkavállalókat, és áthelyezi őket a sorba, hogy gyorsan elvégezzék a feladatot. Ha a mérleg opció értéke null, akkor a felügyelő a dolgozók egyetlen csoportját használja a futó feladatok feldolgozásához. Alapértelmezés szerint itt egy felügyelő van megadva. Lehetséges azonban több felügyelő kijelölése, valamint az adott kapcsolat, sorok, kiegyensúlyozó mechanizmus stb. minden felügyelő számára meghatározható.
Ha szeretné ellenőrizni a a Redis csatlakozási illesztőprogram, majd nyissa meg a config /sor.php fájl. A Redis szakasza a következő beállítást tartalmazza.
'redis' => ['driver' => 'redis',
'connection' => 'alapértelmezett',
'queue' => env ('REDIS_QUEUE', 'alapértelmezett'),
'retry_after' => 90,
'block_for' => null,
],
A beállítás szerint, ha nincs hozzárendelve feladat, akkor a sor állapota alapértelmezett marad. Itt a retry_after értéke azt jelzi, hogy a sor 90 másodperc után újraindul. Növelheti vagy csökkentheti az értékeket a követelmény alapján.
Nyissa meg a Horizon irányítópultot:
Futtassa a következő URL-t a böngészőből, hogy megtekinthesse a láthatósági irányítópulton a sorral kapcsolatos információkat.
http: // localhost: 8000 / horizon /
A következő kimenet jelenik meg, ha a horizont megfelelően működik. A kimenet azt mutatja, hogy a horizont most aktív, egy felügyelő és egy alapértelmezett sor van meghatározva, és még nincs hozzárendelve feladat.
A. Alapértelmezett szakaszának módosítása a horizont.php fájl a következő kóddal.
'alapértelmezett' => ['felügyelő-1' => [
'connection' => 'redis',
'queue' => ['alapértelmezett', 'e-mail'],
„időtúllépés” => 30,
"alvás" => 3,
'balance' => 'auto',
'minProcesses' => 1,
'maxProcesses' => 10,
'próbálkozik' => 1,
'szép' => 0,
],
],
Itt egy újabb sor, email hozzáadva, időtúllépés 30 másodpercre van állítva, alvás 3 másodpercre van állítva, minFolyamatok értéke 1, és maxProcesses értéke 10. Ezen beállítások aktiválásához le kell állítania a futó horizontot, törölnie kell a konfigurációs gyorsítótárat, és újra el kell kezdenie a horizontot. nyomja meg ctrl + c hogy megszüntesse a futó horizontot. Futtassa az alábbi parancsokat a konfigurációs gyorsítótár törléséhez és a horizont újrakezdéséhez.
$ php kézműves config: cache$ php kézműves horizont
Futtassa újra a következő URL-t a böngészőből, hogy ellenőrizze a kimenetet az új beállítás alapján.
http: // localhost: 8000 / horizon /
A következő kimenet jelenik meg a böngészőben az aktuális beállítás alapján.
Következtetés:
A telepítési folyamatot és a láthatár futtatásának módját elsősorban az oktatóanyag emeli ki. Létre kell hoznia egy munkát, és hozzá kell rendelnie egy sorhoz, hogy megismerje a horizont részletes felhasználását, amelyet ez a cikk nem tartalmaz. Ez a cikk segít a Laravel-felhasználóknak a horizont telepítésében és a munka megkezdésében.