Ho letto la documentazione e sembra che Lumen sia Laravel con meno funzioni. Mi manca qualcosa. Sto cercando una tabella comparativa dei componenti e delle caratteristiche di Laravel e Lumen. Qualcuno conosce le differenze?
Ho letto la documentazione e sembra che Lumen sia Laravel con meno funzioni. Mi manca qualcosa. Sto cercando una tabella comparativa dei componenti e delle caratteristiche di Laravel e Lumen. Qualcuno conosce le differenze?
Risposte:
Con l'ultima versione di Lumen (5.2), Microframework si concentra sulle API stateless.
La documentazione afferma:
Lumen 5.2 rappresenta un cambiamento nel dimagrimento di Lumen per concentrarsi esclusivamente sul servizio di API JSON apolidi. Pertanto, le sessioni e le viste non sono più incluse nel framework. Se è necessario accedere a queste funzionalità, è necessario utilizzare l'intero framework Laravel.
Lumen è tutto sulla velocità . È più veloce e può gestire più richieste al secondo rispetto a Laravel.
Laravel è un framework che unisce molti componenti (componenti di terze parti e propri di Laravels). Ora Lumen utilizza molti degli stessi componenti, ma riduce al minimo il processo di bootstrap. Si potrebbe dire che è una "colla diversa", i componenti (e quindi molte caratteristiche) sono per lo più gli stessi.
Il miglioramento delle prestazioni si ottiene eliminando parte della flessibilità del framework in termini di configurazione e modificando il processo di avvio predefinito.
Oltre a ciò, più funzioni sono disabilitate per impostazione predefinita e devono essere attivate prima di poter essere utilizzate. Ad esempio: Facciate (come DB::table()
) Per
prima cosa devi decommentare questa linea bootstrap/app.php
per abilitarle:
// $app->withFacades();
Lo stesso vale per i file di ambiente Dotenv e Eloquent.
Per il routing Lumen usa nikic / FastRoute invece del router symfonys perché funziona molto meglio e dà al micro-framework un altro grande impulso.
A parte questo, praticamente tutto è lo stesso di Laravel.
Buona lettura su Lumen
Lumen non è progettato per sostituire Laravel, piuttosto è un framework più specializzato (e ridotto) progettato per i micro-servizi e le API. Ha rimosso le funzionalità non necessarie per un'API come sessioni HTTP e cookie e ha anche limitato il numero di opzioni di configurazione. Immediatamente, Lumen ha sacrificato la flessibilità di Laravel per la velocità.
Tuttavia, è possibile aggiungere componenti Laravel a Lumen per estenderlo, quindi può essere utilizzato per più di un semplice micro-servizio e API. Tuttavia, se il tuo obiettivo è quello di estendere Lumen per diventare un sito Web, puoi utilizzare Laravel.
Hanno anche diversi casi d'uso. Lumen e Laravel dovrebbero lavorare insieme. Per le API e i servizi che vengono chiamati di frequente, utilizzare Lumen. Per applicazioni rivolte all'utente, utilizzare Laravel.
Questa risposta è tratta da un post sul blog che ho scritto che spiega la differenza tra Lumen e Laravel.
Citazione di Matt Stauffer
Lumen ha le stesse fondamenta di Laravel e molti degli stessi componenti. Ma Lumen è progettato per i microservizi, non tanto per le applicazioni rivolte all'utente (anche se può essere utilizzato per qualsiasi cosa.) In quanto tale, le novità front-end come Bootstrap ed Elixir e il bootstrap e le sessioni di autenticazione non sono pronti all'uso, e c'è meno flessibilità per l'estensione e la modifica dei file bootstrap.
Puoi leggere di più qui
npm install
cosa che non è del tutto pronta "pronta all'uso", direi. Quindi non perdiamo molto riguardo a questi, passando a Lumen. In Lumen, ho appena creato un package.json e npm installano Elixer, e ho installato Bower e fatto ...
redirect()->intended
. Spero che Lumen raggiungerà queste aree. Mi piace molto un Laravel senza ORM (Eloquent) e quindi Lumen è molto attraente per me.
redirect()->intended()
con un'API, che è ciò su cui Lumen si concentra.
Il microframework di Lumen è una versione leggera del framework full-stack Laravel. Lumen usa la sintassi e i componenti di Laravel e può essere 'aggiornato' facilmente a Laravel.
Lumen è un framework più specializzato (e ridotto) progettato per lo sviluppo di microservizi e sviluppo API. Quindi, alcune delle funzionalità di Laravel come sessioni HTTP, cookie e modelli non sono necessarie e Lumen le toglie, mantenendo ciò che è essenziale: routing, registrazione, memorizzazione nella cache, code, convalida, gestione degli errori e un paio di altre.
Perché Lumen
Lumen è la soluzione perfetta per creare micro-servizi basati su Laravel e API incredibilmente veloci. In effetti, è uno dei micro-framework più veloci disponibili. Scrivere servizi incredibilmente veloci per supportare le tue applicazioni Laravel non è mai stato così facile. Doc
Lumen è un framework per la creazione di API, che essenzialmente servirà le risposte JSON per le tue richieste. Questo è tutto.
Questi tipi di applicazioni sono noti come servizi Web in generale .
A partire dall'aggiornamento di Lumen 5.2, non supporta le viste laravel, le sessioni ecc ... per questo dovrai aggiornare al framework laravel completo.
Alcuni componenti del framework Laravel vengono scambiati con altri pacchetti a favore delle prestazioni. controllali qui
Scenari di esempio in cui possiamo considerare Lumen
La differenza principale tra laravel e lumen è che Laravel può avere comandi artigianali, che lumen non ha.