J'ai lu la documentation et il semble que Lumen est Laravel avec moins de fonctionnalités. J'ai dû louper quelque chose. Je recherche un tableau de comparaison des composants et des fonctionnalités de Laravel et Lumen. Quelqu'un connaît-il les différences?
181
Réponses:
Mise à jour (5.2)
Avec la dernière version de Lumen (5.2), le Microframework se concentre sur les API sans état.
La documentation déclare:
Réponse originale (<= 5.1)
Lumen est une question de vitesse . C'est plus rapide et peut gérer plus de demandes par seconde que Laravel.
Laravel est un framework qui rassemble de nombreux composants (composants tiers et propres à Laravels). Maintenant, Lumen utilise beaucoup des mêmes composants, mais réduit au minimum le processus de démarrage. On pourrait dire que c'est une "colle différente", les composants (et donc beaucoup de fonctionnalités) sont pour la plupart les mêmes.
L'amélioration des performances est obtenue en supprimant une partie de la flexibilité du framework en termes de configuration et en modifiant le processus de démarrage par défaut.
En outre, d'autres fonctionnalités sont désactivées par défaut et doivent être activées avant de pouvoir être utilisées. Par exemple: Façades (comme
DB::table()
)Vous devez d'abord décommenter cette ligne
bootstrap/app.php
pour les activer:Il en va de même pour les fichiers d'environnement Dotenv et Eloquent.
Pour le routage, Lumen utilise nikic / FastRoute au lieu du routeur Symfonys car il fonctionne beaucoup mieux et donne au micro-framework un autre coup de pouce.
A part ça, à peu près tout est pareil qu'à Laravel.
Bonnes lectures sur Lumen
la source
Lumen n'est pas conçu pour remplacer Laravel, mais plutôt un framework plus spécialisé (et dépouillé) conçu pour les micro-services et les API. Il a supprimé des fonctionnalités inutiles pour une API telles que les sessions HTTP et les cookies, et a également limité le nombre d'options de configuration. Prêt à l'emploi, Lumen a sacrifié la flexibilité de Laravel pour la vitesse.
Cependant, vous pouvez ajouter des composants Laravel à Lumen pour l'étendre, afin qu'il puisse être utilisé pour plus que de simples micro-services et API. Cependant, si votre objectif est d'étendre Lumen pour qu'il devienne un site Web, vous pouvez également utiliser Laravel à la place.
Ils ont également différents cas d'utilisation. Lumen et Laravel sont censés travailler ensemble. Pour que les API et les services soient fréquemment appelés, utilisez Lumen. Pour les applications destinées aux utilisateurs, utilisez Laravel.
Cette réponse est tirée d'un article de blog que j'ai écrit qui explique la différence entre Lumen et Laravel.
la source
Citation de Matt Stauffer
Vous pouvez en lire plus ici
la source
npm install
donc pas complètement prêt "prêt à l'emploi", je dirais. On n'y perd donc pas grand-chose en passant à Lumen. Dans Lumen, je viens de créer un package.json et npm installer Elixer, et installer bower et c'est fait ...redirect()->intended
. J'espère que Lumen rattrapera son retard dans ces domaines. J'aime vraiment un Laravel sans ORM (Eloquent) et donc Lumen me plaît beaucoup.redirect()->intended()
avec une API, ce sur quoi Lumen se concentre.Le microframework Lumen est une version légère du framework full-stack Laravel. Lumen utilise la syntaxe et les composants Laravel, et peut être «mis à jour» facilement vers Laravel.
Lumen est un framework plus spécialisé (et simplifié) conçu pour le développement de microservices et le développement d'API. Ainsi, certaines des fonctionnalités de Laravel telles que les sessions HTTP, les cookies et la création de modèles ne sont pas nécessaires et Lumen les supprime, en conservant l'essentiel - le routage, la journalisation, la mise en cache, les files d'attente, la validation, la gestion des erreurs et quelques autres.
la source
Pourquoi Lumen?
Lumen est un framework pour créer des API, qui serviront essentiellement des réponses JSON pour vos demandes. C'est tout.
Ces types d'applications sont généralement appelés services Web .
Depuis la mise à jour de Lumen 5.2, il ne prend pas en charge les vues laravel, les sessions, etc. pour cela, vous devrez passer au framework laravel complet.
Certains composants du framework Laravel sont échangés avec d'autres packages en faveur des performances. vérifiez-les ici
Exemples de scénarios où l'on peut considérer Lumen
la source
La principale différence entre laravel et lumen est que Laravel peut avoir des commandes artisanales, ce que la lumière n'a pas.
la source