laravel

Laravel Horizon Tutorial

Laravel Horizon Tutorial
Laravel horizon-paketet används för att hantera Laravel-köer. Det ger en snygg instrumentpanel för köerna. Detta paket tillåter användare att konfigurera jobb, generera analyser och övervaka de olika typerna av körelaterade uppgifter, inklusive jobbtid, fel, genomströmning osv. Konfigurationsinformationen för alla teammedlemmar i projektet lagras i en enda fil som kan styras centralt. Detta paket är gratis att använda i Laravel-projektet, men det ingår inte i kärnkoden. Så du måste först installera det här paketet innan du använder det. Den här artikeln visar några av de olika funktionerna i Laravel horizon och hur man installerar och kör Laravel horizon för hantering av Laravel-köer med en fin instrumentpanel.

Funktioner:

Några viktiga funktioner i Laravel-horisonten nämns nedan:

Horizon-kommandon:

Vissa horisontskommandon nämns nedan för att styra den löpande horisonten.

Följande kommando används för att pausa horisontprocessen.

$ php hantverkshorisont: pausa

Följande kommando används för att återuppta den pausade horisontprocessen.

$ php hantverkshorisont: fortsätt

Följande kommando används för att kontrollera den aktuella statusen för horisontprocessen.

$ php hantverkshorisont: status

Följande kommando används för att avsluta horisontprocessen. Horisonten upphör när alla löpande jobb har slutförts.

$ php hantverkshorisont: avsluta

Installera Horizon:

Förutsättningar:

Du måste installera ett nytt projekt med den senaste versionen av Laravel innan du börjar stegen för att installera horisonten. Stegen visas här med hjälp av Laravel 8.x.

Installationsprocess:

Kör följande kommando från terminalen för att installera horisontpaketet med kompositören.

$ kompositör kräver laravel / horisont

Efter installationen av Horizon, publicera dess tillgångar med hjälp av horisonten: installera artisan-kommandot:

$ php hantverkshorisont: installera

predis paketet används i denna handledning för att använda predis som Redis-klient . Kör följande kommando för att installera predis-paketet med kompositör.

$ composer kräver predis / predis

öppna databas.php fil som ligger under konfigurationen mapp och ställ in värdet på klient enligt nedanstående.

'client' => env ('REDIS_CLIENT', 'predis'),

Kör följande kommando för att rensa cacheminnet innan du börjar horisonten.

$ php hantverkscache: rensa

Kör följande kommando för att starta horisonten.

$ php hantverkshorisont

Följande utdata visas om horisonten är installerad och fungerar korrekt.

Kodbaserad konfiguration:

Det ger möjlighet att enkelt samarbeta med medlemmar i projektteamet när man arbetar med köer. Olika typer av inställningar kan ställas in med hjälp av kö: kommandot work artisan. konfiguration / horisont.php-konfigurationsfil används för att ställa in olika konfigurationer. Öppna horisont.php fil för att kontrollera standardinställningarna. De Konfiguration av köarbetare avsnittet i den här filen innehåller följande inställning.

'standardvärden' => [
'supervisor-1' => [
'connection' => 'redis',
'kö' => ['standard'],
'balance' => 'auto',
'maxProcesses' => 1,
'försöker' => 1,
'trevligt' => 0,
],
],
'miljöer' => [
'produktion' => [
'supervisor-1' => [
'maxProcesses' => 10,
'balanceMaxShift' => 1,
'balanceCooldown' => 3,
],
],
'lokal' => [
'supervisor-1' => [
'maxProcesses' => 3,
],
],
],

Här kan balansvärdet vara enkel eller bil eller null. När enkel är inställt på balans, kommer processen att delas mellan två köer. När bilen är inställd på balans, sedan balanserar den köarbetarna baserat på återstående jobb och genomsnittlig väntetid. Om någon kö blir upptagen kommer horisonten att söka efter tillgängliga arbetare och överföra dem till kön för att slutföra uppgiften snabbt. Om balansalternativet är inställt på null kommer övervakaren att använda en enda grupp arbetare för att bearbeta de pågående jobben. En handledare definieras här som standard. Men det är möjligt att tilldela flera handledare och den specifika anslutningen, köerna, balanseringsmekanismen osv. kan definieras för varje handledare.

Om du vill kontrollera standardinställningen för Redis anslutningsdrivrutinen öppnar sedan konfigurationen /kö.php fil. De Redis avsnittet i den här filen innehåller följande inställning.

'redis' => [
'driver' => 'redis',
'anslutning' => 'standard',
'kö' => env ('REDIS_QUEUE', 'standard'),
'retry_after' => 90,
'block_for' => null,
],

Enligt inställningen förblir köstatusen om inget jobb tilldelas. Här indikerar värdet av retry_after att kön startar om efter 90 sekunder. Du kan öka eller minska värdena baserat på kravet.

Öppna Horizon Dashboard:

Kör följande URL från webbläsaren för att se den olika körelaterade informationen från horisontpanelen.

http: // localhost: 8000 / horizon /

Följande utdata visas om horisonten fungerar som den ska. Utdata visar att horisonten är aktiv nu, en handledare och standardkö har definierats och inget jobb har tilldelats ännu.

Ändra standardavsnittet för horisonten.php fil med följande kod.

'standardvärden' => [
'supervisor-1' => [
'connection' => 'redis',
'kö' => ['standard', 'e-post'],
'timeout' => 30,
'sömn' => 3,
'balance' => 'auto',
'minProcesses' => 1,
'maxProcesses' => 10,
'försöker' => 1,
'trevligt' => 0,
],
],

Här, en ny kö, e-post är adderat, Paus är inställt på 30 sekunder, sova är inställd på 3 sekunder, minProcesser är inställt på 1 och maxProcesses är satt till 10. För att aktivera dessa inställningar måste du stoppa den löpande horisonten, rensa konfigurationscachen och starta horisonten igen. Tryck ctrl + c för att avsluta den löpande horisonten. Kör följande kommandon för att rensa konfigurationscachen och starta horisonten igen.

$ php artisan config: cache
$ php hantverkshorisont

Kör följande URL från webbläsaren igen för att kontrollera utdata baserat på den nya inställningen.

http: // localhost: 8000 / horizon /

Följande utdata visas i webbläsaren baserat på den aktuella inställningen.

Slutsats:

Installationsprocessen och sättet att köra horisonten belyses huvudsakligen i denna handledning. Du måste skapa ett jobb och tilldela det till en kö för att känna till de detaljerade användningsområdena för horisonten som inte omfattas av den här artikeln. Den här artikeln hjälper Laravel-användare att installera horisonten och börja arbeta med den.

Vulkan för Linux-användare
Med varje ny generation grafikkort ser vi spelutvecklare driva gränserna för grafisk trohet och komma ett steg närmare fotorealism. Men trots all kred...
OpenTTD vs Simutrans
Att skapa din egen transportsimulering kan vara rolig, avkopplande och extremt lockande. Det är därför du måste se till att du testar så många spel so...
OpenTTD-handledning
OpenTTD är ett av de mest populära affärssimuleringsspelen där ute. I det här spelet måste du skapa en underbar transportaffär. Du kommer dock att bör...