Wat is Lumen – Het Micro Laravel-framework?

Heb je gehoord van Lumen, het microlarvenraamwerk dat tegenwoordig trendy wordt? Het is wat de ontwikkelaars tegenwoordig enthousiast maakt, omdat het de ontwikkeling van applicaties voor hen gemakkelijker heeft gemaakt.

Lumen is een microframework gemaakt door de maker van Laravel. Ja dat klopt! Taylor Otwell die Laravel heeft gemaakt, het populaire open source PHP-framework, heeft ook Lumen gemaakt. Lumen maakt dingen kleiner, eenvoudiger, sneller en slanker. En het wordt gebruikt om hoogwaardige microservices te bouwen met losjes gekoppelde componenten, waardoor het voor ontwikkelaars gemakkelijker wordt om verbeteringen en updates aan te brengen, met minimale complexiteit.

Lumen is veel sneller dan andere vergelijkbare frameworks in zijn soort, bijvoorbeeld Slim en Silex. Het belangrijkste doel achter het raamwerk is snelheid, en dat is wat het probeert te bereiken. Omdat het een micro-framework is, zal Lumen waarschijnlijk niet snel Laravel vervangen. Het heeft echter een basisniveau dat bijna lijkt op de Laravel en zijn componenten. Maar het heeft minder configuratieparameters voor het configureren van webapplicaties.

Bekende kenmerken van Lumen

  • Lumen is supersnel
  • Het is open source
  • Heeft een eenvoudige syntaxis
  • Heeft de mogelijkheid van meerdere verzoeken in één seconde
  • Snelle route-functie
  • Welsprekende ORM
  • Bladsjabloon
  • Database-abstractie
  • Controllers
  • Caching
  • Foutafhandeling
  • Taken in de wachtrij
  • Afhankelijkheid Injectie

Lumen staat bekend om zijn Fast Route-pakket voor de router, een bibliotheek die zorgt voor een snelle implementatie, in plaats van de router die bij Laravel wordt geleverd.

Lumen heeft de functie Gebeurtenissen met zijn eenvoudige waarnemersimplementatie om u te abonneren en naar de gebeurtenissen in de toepassing te luisteren.

Voor het authenticatieproces gebruikt Lumen Stateless-mechanisme zoals tokens, in plaats van sessiestatus.

Ondersteuning voor caching is een interessante functie voor Lumen, net als voor Laravel. Cache-stuurprogramma’s zoals Memcached, Redis en Database worden hier allemaal ondersteund.

De microservice heeft bijna dezelfde Queuing-service als Laravel.

Vergelijking tussen Laravel en Lumen

Hoewel de maker van beide frameworks één is, zijn er tal van verschillen tussen de twee. Laravel, gelicentieerd onder MIT, is een robuust MVC-framework voor het ontwikkelen van webapplicaties in PHP. Lumen heeft hetzelfde basisniveau als Laravel en maakt gebruik van de volledige kracht van het framework, voornamelijk welsprekende ORM, taken in de wachtrij, afhankelijkheidsinjectie, routering, enkele geplande opdrachten enzovoort. Met Lumen is er minder flexibiliteit bij het uitbreiden en wijzigen van de bootstrap-bestanden.

Omdat Lumen een microservice is, dus veel meer gespecialiseerd in API-ontwikkeling en -ontwikkeling en omdat het een uitgekleed framework is, hoeven veel van de functies in Laravel niet ook in deze te zitten.

Hoewel Laravel kan worden gebruikt voor allerlei soorten applicatie-ontwikkeling, is Lumen geschikt voor bepaalde gespecificeerde services zoals sjablonen, caching, cookie-ontwikkeling, API’s, sjablonen enz. Laravl heeft alleen de benodigde uitgebreide componenten en tools nodig om de betreffende applicatie te bouwen. Lumen is lichter en wordt aangedreven door microservices.

Laravel is een full-stack framework en dit opent de integratie van een reeks tools om de functies uit te breiden. Lumen breidt niet zo veel uit en er zijn beperkingen op de tools en componenten van derden die je kunt integreren . Het is ook niet mogelijk om op Laravel gebaseerde projecten binnen Lumen te integreren, maar u kunt de Lumen API’s gebruiken tijdens het ontwikkelen van applicaties.

Laravel sluit perfect aan bij de databasefunctionaliteit en kan gemakkelijk SQL-query’s verwerken en de wijzigingen overnemen. Dit is een voordeel met Laravel, en Lumen heeft dat voordeel niet, en met het microframework moet je jongleren met SQL-query’s.

Lumen heeft absoluut geen leercurve, dus het is een vrij eenvoudig kader om te leren. Laravel is veel groter en daarom is er een leercurve om de kunst onder de knie te krijgen.

Lumen heeft ook beperkingen

Hoewel het een verbluffend snel framework is, heeft Lumen zijn beperkingen. Het is niet zo configureerbaar als het Laravel-framework, en ook niet zo flexibel. Het prestatieaspect van het microframework wordt bereikt door het verwijderen van de flexibiliteitsfunctie van het framework, met name op het gebied van configuratie en het wijzigen van het standaard opstartproces.

Lumen laat je de Routing-component van Symfony niet gebruiken, dus je hebt geen toegang tot functies zoals subdomeinroutering, optionele parameters enz. U moet /- gebruiken voor betere prestaties. Als je Symfony Routing-functies nodig hebt, schakel dan over naar Laravel.

En Lumen kan niet worden geconfigureerd als het Laravel-framework. U kunt framework boots trappers niet overschrijven om de manier waarop het framework is opgebouwd te wijzigen. U kunt Lumen niet gebruiken met foutopsporingsbalken, CMS-systemen en aanvullende Laravel-pakketten.

Afsluitende gedachten

Wanneer Lumen kiezen?

Lumen is gebouwd voor snelheid en het is aanzienlijk sneller dan alle andere microframeworks in zijn klasse. Laravel is ook snel, maar u hoeft de configuratie- en aanpassingsopties niet te doorlopen, waardoor u veel laadtijd van uw service bespaart. De snelheid van Lumen en het gemak van de functies van Laravel maken het een voor de hand liggende keuze onder ontwikkelaars.

Lumen is ook een goede keuze als het uw prioriteit is om de serverkosten te verlagen, vooral wanneer één aspect van de applicatie (gemaakt met Laravel) meer verkeer ontvangt dan de rest. U kunt dat aspect van de applicatie gewoon als een aparte Lumen-applicatie bouwen en het laten werken.

Lumen is perfect als PHO-microservice omdat het een uniek bootstrapping-proces heeft waarmee ontwikkelaars hoogwaardige applicaties kunnen maken.

Interessante links:

Een vergelijking tussen Laravel en Lumen

Meer informatie over Lumen

Foto’s: Canvas


De auteur: Sascha Thattil werkt bij Software-Developer-India.com, een onderdeel van de YUHIRO Group. YUHIRO is een Duits-Indiase onderneming die programmeurs levert aan IT-bedrijven, agentschappen en IT-afdelingen.

Geef een reactie

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.