
Messenger Component
Message bus, handlers, transports, mensagens assíncronas, middleware, retentativas, mensagens com falha
1Qual é o objetivo principal do componente Messenger no Symfony?
Qual é o objetivo principal do componente Messenger no Symfony?
Resposta
O componente Messenger permite despachar mensagens para handlers, de forma síncrona ou assíncrona por meio de transports como RabbitMQ, Redis ou Doctrine. Ele facilita a construção de arquiteturas desacopladas ao separar a emissão de uma mensagem do seu processamento, o que melhora a escalabilidade e a manutenibilidade das aplicações.
2Como definir uma mensagem no Symfony Messenger?
Como definir uma mensagem no Symfony Messenger?
Resposta
Uma mensagem no Symfony Messenger é simplesmente uma classe PHP simples (POPO) que contém os dados necessários para o processamento. Nenhuma interface ou classe pai é necessária. A convenção é nomear as mensagens com sufixos descritivos como Notification ou Command, e torná-las imutáveis com propriedades readonly para garantir a integridade dos dados.
3Como criar um handler para processar uma mensagem no Symfony Messenger?
Como criar um handler para processar uma mensagem no Symfony Messenger?
Resposta
Um handler é uma classe com um método __invoke() que recebe a mensagem como parâmetro. O atributo #[AsMessageHandler] registra automaticamente o handler. O Symfony detecta o tipo de mensagem a processar por meio do type-hint do parâmetro. Essa abordagem usa autowiring e evita qualquer configuração manual em services.yaml.
Qual interface deve ser injetada para despachar uma mensagem no Symfony Messenger?
O que é um Envelope no contexto do Symfony Messenger?
+19 perguntas de entrevista
Outros temas de entrevista Symfony
PHP Moderno (8.1+)
Fundamentos do Symfony
Routing & Controllers
Twig & Templates
Fundamentos do Doctrine ORM
Formulários Symfony
Validação de dados
Dependency Injection & Services
Security & Authentication
Doctrine avançado
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
HTTP Client
Cache e Desempenho
Workflow Component
Testing Symfony
Mailer Component
Traduções e i18n
EasyAdmin Bundle
Arquitetura Symfony
Desempenho e otimização
Segurança avançada
Bundles Personalizados
Microservices com Symfony
Real-time & WebSockets
Deployment & DevOps
Domine Symfony para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis