
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問