Laravel Horizon Tutorial

Laravel Horizon Tutorial
Laravel Horizon -pakken brukes til å administrere Laravel -køer. Det gir et godt utseende dashbord for køene. Denne pakken lar brukere konfigurere jobber, generere analyser og overvåke de forskjellige typene kørelaterte oppgaver, inkludert jobbkjøretid, feil, gjennomstrømning osv. Konfigurasjonsinformasjonen til alle teammedlemmer i prosjektet lagres i en enkelt fil som kan kontrolleres sentralt. Denne pakken er gratis å bruke i Laravel -prosjektet, men den er ikke inkludert i kjernekoden. Så du må først installere denne pakken før du bruker den. Denne artikkelen viser deg noen av de forskjellige funksjonene i Laravel Horizon og hvordan du installerer og kjører Laravel Horizon for å håndtere Laravel -køer ved hjelp av et fint dashbord.

Egenskaper:

Noen viktige trekk ved Laravel Horizon er nevnt nedenfor:

  • Det er en åpen kildekodepakke
  • Det viser alle køer og jobbinformasjon ved hjelp av et vakkert dashbord.
  • Det gir informasjon om ventende jobber, fullførte jobber og mislykkede jobber.
  • Det gir køer og jobbinformasjon ved hjelp av beregninger.
  • Det overvåker jobbene ved å bruke tagger.

Horisontkommandoer:

Noen horisontkommandoer er nevnt nedenfor for å kontrollere løpshorisonten.

Følgende kommando brukes til å pause horisontprosessen.

$ PHP Artisan Horizon: Pause

Følgende kommando brukes til å gjenoppta den pause horisontprosessen.

$ PHP Artisan Horizon: Fortsett

Følgende kommando brukes til å sjekke gjeldende status for horisontprosessen.

$ PHP Artisan Horizon: Status

Følgende kommando brukes til å avslutte horisontprosessen. Horisonten vil avslutte etter å ha fullført alle løpende jobber.

$ PHP Artisan Horizon: avslutte

Installer horisont:

Forutsetninger:

Du må installere et nytt prosjekt ved hjelp av den nyeste versjonen av Laravel før du starter trinnene for å installere horisonten. Trinnene vises her ved å bruke Laravel 8.x.

Installasjonsprosess:

Kjør følgende kommando fra terminalen for å installere Horizon -pakken ved hjelp av komponisten.

$ komponist krever laravel/horisont

Etter å ha installert Horizon, publiser eiendelene sine ved hjelp av Horizon: Installer Artisan -kommandoen:

$ PHP Artisan Horizon: Installer

predis Pakken brukes i denne opplæringen for å bruke PRIDIS som Redis -klient . Kjør følgende kommando for å installere predispakke ved hjelp av komponist.

$ komponist krever predis/predis

åpen database.PHP fil som ligger under konfigurasjonen mappe og angi verdien av klient som vist under.

'Client' => env ('redis_client', 'dispis'),

Kjør følgende kommando for å fjerne hurtigbufferen før du starter horisonten.

$ PHP Artisan Cache: Clear

Kjør følgende kommando for å starte horisonten.

$ PHP Artisan Horizon

Følgende utgang vises hvis horisonten er installert og fungerer ordentlig.

Kodebasert konfigurasjon:

Det gir muligheten til å samarbeide lett med prosjektgruppemedlemmer når du jobber med køer. Ulike typer innstillinger kan settes ved å bruke kø: Arbeids Artisan -kommando. konfigurasjon/horisont.PHP -konfigurasjonsfil brukes til å angi forskjellige konfigurasjoner. Åpen horisont.PHP Fil for å sjekke standardinnstillingene. De Køarbeiderkonfigurasjon delen av denne filen inneholder følgende innstilling.

'Standards' => [
'Supervisor-1' => [
'Connection' => 'Redis',
'kø' => ['standard'],
'Balanse' => 'Auto',
'MaxProcesses' => 1,
'Forsøk' => 1,
'fin' => 0,
],
],
'miljøer' => [
'Produksjon' => [
'Supervisor-1' => [
'MaxProcesses' => 10,
'balancemaxshift' => 1,
'BalanceCooldown' => 3,
],
],
'lokal' => [
'Supervisor-1' => [
'MaxProcesses' => 3,
],
],
],

Her kan verdien av balansen være enkel eller bil eller null. Når enkel er satt til balanse da prosessen vil dele seg mellom to køer. Når bilen er satt til balanse, så balanserer det køarbeiderne basert på gjenværende jobber og gjennomsnittlig ventetid. Hvis noen kø blir travel, vil horisonten søke etter tilgjengelige arbeidere og overføre dem til køen for å fullføre oppgaven raskt. Hvis balansealternativet er satt til Null, vil veilederen bruke et enkelt basseng med arbeidere for å behandle løpsjobbene. En veileder er definert her som standard. Men det er mulig å tildele flere veiledere og den spesielle tilkoblingen, køene, balanseringsmekanismen osv. kan defineres for hver veileder.

Hvis du vil sjekke standardinnstillingen til Redis Tilkoblingsdriver åpner deretter konfigurasjonen/kø.PHP fil. De Redis delen av denne filen inneholder følgende innstilling.

'Redis' => [
'Driver' => 'Redis',
'tilkobling' => 'standard',
'kø' => env ('redis_queue', 'standard'),
'RETRY_After' => 90,
'block_for' => null,
],

I henhold til innstillingen, hvis ingen jobb er tildelt, vil køstatusen forbli standard. Her indikerer verdien av retry_after at køen vil starte på nytt etter 90 sekunder. Du kan øke eller redusere verdiene basert på kravet.

Åpne Horizon Dashboard:

Kjør følgende URL fra nettleseren for å se den forskjellige kø -relaterte informasjonen fra Horizon Dashboard.

http: // localhost: 8000/horisont/

Følgende utgang vises hvis horisonten fungerer som den skal. Utgangen viser at horisonten er aktiv nå, en veileder og standardkø er definert og ingen jobb er tildelt ennå.

Endre standarddelen av horisonten.PHP fil med følgende kode.

'Standards' => [
'Supervisor-1' => [
'Connection' => 'Redis',
'kø' => ['standard', 'e -post'],
'timeout' => 30,
'Søvn' => 3,
'Balanse' => 'Auto',
'Minprocesses' => 1,
'MaxProcesses' => 10,
'Forsøk' => 1,
'fin' => 0,
],
],

Her, en annen kø, e -post er lagt til, pause er satt til 30 sekunder, sove er satt til 3 sekunder, minprosesser er satt til 1, og MaxProcesses er satt til 10. For å aktivere disse innstillingene må du stoppe løpshorisonten, tømme konfigurasjonsbufferen og starte horisonten igjen. trykk Ctrl+c å avslutte løpshorisonten. Kjør følgende kommandoer for å tømme konfigurasjonsbufferen og starte horisonten igjen.

$ PHP Artisan Config: Cache
$ PHP Artisan Horizon

Kjør følgende URL fra nettleseren igjen for å sjekke utdataene basert på den nye innstillingen.

http: // localhost: 8000/horisont/

Følgende utgang vises i nettleserbasert på gjeldende innstilling.

Konklusjon:

Installasjonsprosessen og måten å kjøre horisonten blir hovedsakelig fremhevet i denne opplæringen. Du må opprette en jobb og tilordne den til en kø for å kjenne detaljerte bruksområder i horisonten som ikke er dekket i denne artikkelen. Denne artikkelen vil hjelpe Laravel -brukerne til å installere horisonten og begynne å jobbe med den.