Cos’è Lumen – Il framework Micro Laravel?

Hai mai sentito parlare di Lumen, il micro quadro larvale che sta diventando di moda in questi giorni? È la cosa che sta entusiasmando gli sviluppatori in questi giorni perché ha reso più facile per loro lo sviluppo di applicazioni.

Lumen è un micro framework creato dal creatore di Laravel. Sì, è giusto! Taylor Otwell, che ha creato Laravel, il popolare framework PHP open source, ha creato anche Lumen. Lumen rende le cose più piccole, più semplici, più veloci e più snelle. E viene utilizzato per creare micro servizi ad alte prestazioni con componenti debolmente accoppiati, rendendo più facile per gli sviluppatori apportare miglioramenti e aggiornamenti, con una complessità minima.

Lumen è molto più veloce di altri framework simili nel suo genere, ad esempio Slim e Silex. Lo scopo principale del framework è la velocità, ed è quello che si sta sforzando di raggiungere. Essendo un micro-framework, è improbabile che Lumen sostituirà Laravel in tempi brevi. Tuttavia, ha un livello di base che assomiglia quasi a Laravel e ai suoi componenti. Ma ha meno parametri di configurazione per la configurazione delle applicazioni web.

Caratteristiche note di Lumen

  • Lumen è super veloce
  • È open source
  • Ha una sintassi semplice
  • Ha la capacità di più richieste in un secondo
  • Funzione percorso veloce
  • Eloquente ORM
  • Sagomatura della lama
  • Astrazione del database
  • controllori
  • memorizzazione nella cache
  • Gestione degli errori
  • Lavori in coda
  • Iniezione di dipendenza

Lumen è noto per il suo pacchetto Fast Route per il router, una libreria che fornisce un’implementazione rapida, invece del router fornito con Laravel.

Lumen ha la funzione Eventi con la sua semplice implementazione dell’osservatore per iscriversi e ascoltare gli eventi nell’applicazione.

Per il processo di autenticazione , Lumen utilizza un meccanismo stateless come i token, invece dello stato della sessione.

Il supporto per la memorizzazione nella cache è una funzionalità interessante per Lumen, la stessa di Laravel. I driver della cache come Memcached, Redis e Database sono tutti supportati qui.

Il micro-servizio ha quasi lo stesso servizio di accodamento di Laravel.

Confronto tra Laravel e Lumen

Anche se il creatore di entrambi i framework è uno, ci sono molte differenze tra i due. Concesso in licenza dal MIT, Laravel è un robusto framework MVC per lo sviluppo di applicazioni web in PHP. Lumen ha lo stesso livello di base di Laravel e sfrutta tutta la potenza del framework, principalmente Eloquent ORM, lavori in coda, iniezione di dipendenze, routing, alcuni comandi pianificati e così via. Con Lumen, c’è meno flessibilità nell’estensione e nella modifica dei file bootstrap.

Poiché Lumen è un micro-servizio, quindi è molto più specializzato nello sviluppo e nello sviluppo di API ed essendo un framework ridotto, molte delle funzionalità di Laravel non devono essere presenti anche in questo.

Mentre Laravel può essere utilizzato per tutti i tipi di sviluppo di applicazioni, Lumen è adatto a determinati servizi specificati come modelli, memorizzazione nella cache, sviluppo di cookie, API, modelli ecc. Laravl ha solo bisogno dei componenti e degli strumenti estesi necessari per creare l’applicazione in questione. Lumen è più leggero e guidato da micro servizi.

Laravel è un framework full-stack e questo apre l’integrazione di una serie di strumenti per estenderne le funzionalità. Lumen non si estende così tanto e ci sono restrizioni sugli strumenti e sui componenti di terze parti che puoi integrare . Inoltre, non è possibile integrare progetti basati su Laravel all’interno di Lumen, ma è possibile utilizzare le API di Lumen durante lo sviluppo di applicazioni.

Laravel si allinea perfettamente con la funzionalità del database e può facilmente gestire le query SQL e adottare le modifiche. Questo è un vantaggio con Laravel e Lumen non ha questo vantaggio e, con il micro-framework, devi destreggiarti tra le query SQL.

Lumen non ha assolutamente alcuna curva di apprendimento, quindi è un framework abbastanza facile da imparare. Laravel è molto più grande, e quindi c’è una curva di apprendimento per padroneggiare l’arte.

Anche il lume ha dei limiti

Sebbene sia un framework incredibilmente veloce, Lumen ha i suoi limiti. Non è configurabile come il framework Laravel, né così flessibile. L’aspetto delle prestazioni del micro-framework si ottiene rimuovendo la caratteristica di flessibilità del framework, specialmente nelle aree di configurazione e modificando il processo di avvio predefinito.

Lumen non ti consente di utilizzare il componente Routing di Symfony, quindi non hai accesso a funzionalità come il routing dei sottodomini, i parametri opzionali ecc. Devi usare /- per aumentare le prestazioni. Se hai bisogno delle funzionalità di Symfony Routing, passa a Laravel.

Inoltre, Lumen non può essere configurabile come framework Laravel. Non è possibile sovrascrivere i trapper di avvio del framework per modificare il modo in cui è costruito il framework. Non è possibile utilizzare Lumen con barre di debug, sistemi CMS e pacchetti Laravel aggiuntivi.

Pensieri conclusivi

Quando scegliere Lumen

Lumen è costruito per la velocità ed è significativamente più veloce di tutti gli altri micro-framework della sua lega. Laravel è anche veloce, ma non devi passare attraverso le opzioni di configurazione e personalizzazione, risparmiando così un sacco di tempo di caricamento del tuo servizio. La velocità di Lumen e la facilità delle funzionalità di Laravel lo rendono una scelta ovvia tra gli sviluppatori.

Lumen è anche una buona scelta quando la tua priorità è tagliare i costi del server, specialmente quando un aspetto dell’applicazione (realizzato con Laravel) riceve più traffico del resto. Puoi semplicemente creare quell’aspetto dell’applicazione come un’applicazione Lumen separata e farlo funzionare.

Lumen è perfetto come micro servizi PHO perché ha un processo di bootstrap unico che consente agli sviluppatori di creare applicazioni ad alte prestazioni.

Link interessanti:

Un confronto tra Laravel vs Lumen

Ulteriori informazioni su Lumen

Immagini: Canvas


L’autore: Sascha Thattil lavora presso Software-Developer-India.com che fa parte del gruppo YUHIRO. YUHIRO è un’impresa tedesco-indiana che fornisce programmatori ad aziende IT, agenzie e dipartimenti IT.

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.