Con l'avvento di Laravel Ottanoè possibile prendere le solide fondamenta di Laravel e dotarle di prestazioni ad alto numero di ottani, sfruttando potenti tecnologie server come Roadrunner e Swoole.
Nel frattempo, Laravel Homestead fornisce un ambiente di sviluppo senza problemi per mantenere le cose fluide e coerenti. In questo post, esploreremo l'integrazione di Laravel Octane in Laravel Homestead e le lezioni apprese dal percorso di uno sviluppatore per raggiungere questo obiettivo.
Impostazione di Swoole
Non siamo riusciti a far funzionare Octane su Roadrunner nel nostro ambiente Homestead. Ecco perché abbiamo impostato Swoole. A differenza della documentazione di Laravel, lo stiamo installando come pacchetto apt. Grazie a questa guida.
# Installa Swoole come estensione PHP sudo apt install php8.2-swoole # Verifica che Swoole sia caricato php -m | grep swooleEsecuzione di Octane su Homestead
Imposta Octane nella tua app secondo la documentazione di Laravel:
compositore richiede laravel/octane # seleziona Swoole php artisan octane:installEcco dove avviene la magia. Una volta che Swoole è stato impostato, puoi avviare Laravel Octane all'interno di Homestead come segue:
php artisan octane:start --server=swoole --host="tuodominio.test" --port=8089Il comando sopra indica a Laravel Octane di usare Swoole come server, lo associa a un dominio specifico accessibile all'interno di Homestead e imposta la porta su 8089 per evitare conflitti con altri servizi. Con questa configurazione, lo sviluppo locale diventa non solo più veloce ma anche più fluido, con l'ambiente affidabile e riproducibile fornito da Homestead.
La sfida con Roadrunner
Un post su Twitter documenta il tentativo iniziale di eseguire Laravel Octane nell'ambiente Laravel Homestead utilizzando Roadrunner.
Tweet: "Finalmente ho fatto in modo che Laravel Octane funzionasse bene in Laravel Homestead. Consiglio da professionista: usa le opzioni host e port" - Qui, un collega sviluppatore accenna alla soluzione a un problema simile che hanno affrontato.
@olssonm
Quando si esegue tramite Roadrunner, Roadrunner restituisce questo errore:
ERRORE handle_serve_command: Errore di chiamata di funzione: ERRORE errore di servizio dal plugin *rpc.Plugin interrompe l'esecuzione, errore: rpc_plugin_serve: indirizzo -784: porta non validaEcco perché abbiamo scelto Swoole
Distribuzione in produzione: Laravel Forge e HTTPS
Quando arriva il momento di portare la tua applicazione Laravel ad alte prestazioni in produzione, Laravel Forge è una scelta naturale per molti sviluppatori. Semplifica il processo di distribuzione e, se combinato con Laravel Octane, puoi aspettarti un ambiente di produzione scattante e robusto.
Un suggerimento fondamentale per l'implementazione con Laravel Forge è quello di impostare OTTANO_HTTPS variabile d'ambiente a VERO nel tuo ambiente di produzione. Garantisce che i link generati all'interno della tua applicazione utilizzino HTTPS, riflettendo le transazioni sicure tipiche delle configurazioni di produzione:
OCTANE_HTTPS=veroQuesta semplice modifica aiuta a mantenere la coerenza del protocollo e garantisce agli utenti i vantaggi in termini di sicurezza offerti da HTTPS.
Conclusione
Laravel Octane infonde nuova vita alle applicazioni web ad alte prestazioni e, se abbinato a Laravel Homestead, il processo di sviluppo è tanto fluido quanto veloce. Sebbene possano esserci delle sfide di configurazione, come quella riscontrata con Roadrunner, soluzioni come Swoole forniscono delle ottime alternative.
Adattandoci a questi strumenti e condividendo esperienze, noi come comunità miglioriamo la nostra conoscenza collettiva e il nostro toolkit. La preziosa combinazione di Laravel, Octane, Homestead e Forge è un inizio per la potenza e la flessibilità disponibili per gli sviluppatori PHP moderni.
Ultimo aggiornamento il 17 gennaio 2024
