
Messenger Component
Message bus, handler, transport, 비동기 메시지, middleware, 재시도, 실패한 메시지
22 면접 질문·
Mid-Level
1Symfony에서 Messenger 컴포넌트의 주요 목적은 무엇인가요?
1
Symfony에서 Messenger 컴포넌트의 주요 목적은 무엇인가요?
답변
Messenger 컴포넌트는 RabbitMQ, Redis, Doctrine과 같은 transport를 통해 메시지를 동기 또는 비동기로 handler에 dispatch할 수 있게 해줍니다. 메시지 발행과 처리를 분리하여 느슨하게 결합된 아키텍처 구축을 용이하게 하고, 애플리케이션의 확장성과 유지보수성을 향상시킵니다.
2Symfony Messenger에서 메시지를 어떻게 정의하나요?
2
Symfony Messenger에서 메시지를 어떻게 정의하나요?
답변
Symfony Messenger의 메시지는 처리에 필요한 데이터를 담은 단순한 일반 PHP 클래스(POPO)일 뿐입니다. 어떤 인터페이스나 부모 클래스도 필요하지 않습니다. 관례적으로 메시지에는 Notification이나 Command 같은 설명적인 접미사를 붙이며, readonly 속성으로 immutable하게 만들어 데이터 무결성을 보장합니다.
3Symfony Messenger에서 메시지를 처리하는 handler를 어떻게 생성하나요?
3
Symfony Messenger에서 메시지를 처리하는 handler를 어떻게 생성하나요?
답변
handler는 메시지를 파라미터로 받는 __invoke() 메서드를 가진 클래스입니다. #[AsMessageHandler] 속성이 handler를 자동으로 등록합니다. Symfony는 파라미터의 type-hint를 통해 처리할 메시지 타입을 감지합니다. 이 방식은 autowiring을 사용하며 services.yaml에서의 수동 설정을 피할 수 있습니다.
4
Symfony Messenger에서 메시지를 dispatch하려면 어떤 인터페이스를 주입해야 하나요?
5
Symfony Messenger 맥락에서 Envelope란 무엇인가요?
+19 면접 질문
기타 Symfony 면접 주제
모던 PHP (8.1+)
Junior
20개 질문Symfony 기초
Junior
25개 질문Routing & Controllers
Junior
20개 질문Twig & Templates
Junior
20개 질문Doctrine ORM 기초
Junior
25개 질문Symfony 폼
Junior
22개 질문데이터 유효성 검사
Junior
18개 질문Dependency Injection & Services
Mid-Level
24개 질문Security & Authentication
Mid-Level
26개 질문Doctrine 고급
Mid-Level
24개 질문API Platform
Mid-Level
22개 질문Serializer Component
Mid-Level
20개 질문Events & Event Subscribers
Mid-Level
20개 질문Console & Commands
Mid-Level
18개 질문HTTP Client
Mid-Level
18개 질문캐시 및 성능
Mid-Level
20개 질문Workflow Component
Mid-Level
18개 질문Testing Symfony
Mid-Level
22개 질문Mailer Component
Mid-Level
16개 질문번역 및 i18n
Mid-Level
16개 질문EasyAdmin Bundle
Mid-Level
18개 질문Symfony 아키텍처
Senior
24개 질문성능 및 최적화
Senior
22개 질문고급 보안
Senior
22개 질문커스텀 번들
Senior
20개 질문Symfony를 사용한 마이크로서비스
Senior
22개 질문Real-time & WebSockets
Senior
18개 질문Deployment & DevOps
Senior
20개 질문