Eu li a documentação e parece que o Lumen é o Laravel com menos recursos. Eu devo estar esquecendo alguma coisa. Estou procurando uma tabela de comparação dos componentes e recursos do Laravel e do Lumen. Alguém sabe as diferenças?
181
Respostas:
Atualização (5.2)
Com a versão mais recente do Lumen (5.2), o Microframework se concentra nas APIs sem estado.
A documentação declara:
Resposta original (<= 5,1)
O lúmen tem tudo a ver com velocidade . É mais rápido e pode lidar com mais solicitações por segundo que o Laravel.
O Laravel é uma estrutura que cola vários componentes (componentes de terceiros e próprios do Laravels). Agora, o Lumen utiliza muitos dos mesmos componentes, mas reduz ao mínimo o processo de inicialização. Você poderia dizer que é uma "cola diferente", os componentes (e, portanto, muitos dos recursos) são basicamente os mesmos.
A melhoria de desempenho é obtida removendo parte da flexibilidade da estrutura em termos de configuração e alterando o processo de inicialização padrão.
Além disso, mais recursos são desativados por padrão e precisam ser ativados antes que possam ser usados. Como exemplo: Fachadas (como
DB::table()
)Você primeiro precisa descomentar esta linha
bootstrap/app.php
para habilitá-las:O mesmo vale para arquivos de ambiente Dotenv e Eloquent.
Para o roteamento, o Lumen usa o nikic / FastRoute em vez do roteador symfonys, porque ele tem um desempenho muito melhor e dá à microestrutura outro grande impulso.
Fora isso, praticamente tudo é igual ao Laravel.
Boas leituras no Lumen
fonte
O Lumen não foi projetado para substituir o Laravel; é uma estrutura mais especializada (e simplificada) projetada para microsserviços e APIs. Ele retirou recursos desnecessários de uma API, como sessões HTTP e cookies, além de limitar o número de opções de configuração. Pronto, o Lumen sacrificou a flexibilidade do Laravel por velocidade.
No entanto, você pode adicionar componentes do Laravel ao Lumen para estendê-lo, para que ele possa ser usado para mais do que apenas microsserviços e API. No entanto, se seu objetivo é ampliar o Lumen para se tornar um site, você também pode usar o Laravel.
Eles também têm casos de uso diferentes. Lumen e Laravel devem trabalhar juntos. Para APIs e serviços serem frequentemente chamados, use o Lumen. Para aplicativos voltados para o usuário, use o Laravel.
Esta resposta foi retirada de um post que escrevi que explica a diferença entre Lumen e Laravel.
fonte
Citações de Matt Stauffer
Você pode ler mais aqui
fonte
npm install
que não está completamente pronto "pronto para uso", eu diria. Portanto, não perdemos muito em relação a isso, mudando para o Lumen. Em Lumen, eu apenas criar um package.json e npm instalar Elixer, e pavilhão configuração e feito ...redirect()->intended
. Espero que o Lumen alcance essas áreas. Eu realmente gosto de um Laravel sem ORM (Eloquent) e, portanto, o Lumen é muito atraente para mim.redirect()->intended()
com uma API, que é o foco do Lumen.O microframework Lumen é uma versão leve da estrutura full-stack do Laravel. O Lumen usa a sintaxe e os componentes do Laravel e pode ser 'atualizado' facilmente para o Laravel.
O Lumen é uma estrutura mais especializada (e simplificada) projetada para o desenvolvimento de microsserviços e o desenvolvimento de API. Portanto, alguns dos recursos do Laravel, como sessões HTTP, cookies e modelos, não são necessários e o Lumen os retira, mantendo o essencial - roteamento, registro, armazenamento em cache, filas, validação, tratamento de erros e alguns outros.
fonte
Por que Lumen?
O Lumen é uma estrutura para criar APIs, que essencialmente servirá respostas JSON para suas solicitações. É isso aí.
Esses tipos de aplicativos são conhecidos como serviços da web em geral .
A partir da atualização do Lumen 5.2, ele não suporta visualizações de laravel, sessões etc.
Alguns componentes da estrutura do Laravel são trocados por outros pacotes em favor do desempenho. verifique aqui
Exemplos de cenários em que podemos considerar o Lumen
fonte
A principal diferença entre laravel e lúmen é que o Laravel pode ter comandos artesanais, que não possui lúmen.
fonte