Symfony Messenger: the sharpest tool in your PHP toolbox
summary
A concrete migration story: Symfony Messenger replaces a homemade MySQL job table that caused about two hours of replica lag and deletes thousands of LOC, wires to RabbitMQ (or DB transports), and proves useful for delays, routing and a failed transport to park messages. Defaults matter: default 3 retries with exponential backoff and per-transport serializers force choices; tests use the in-memory transport with JSON serializer plus fallback to PHP serialized format; consumers run in Docker/Kubernetes with memory limits and a restart wrapper and autoscaling.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 1:28Fatweb lessons learned
- 7:57Custom queue struggles
- 13:42SymfonyCon discovery
- 20:06Symfony Messenger basics
- 24:23Retries and failure handling
- 28:18Long-running consumers
- 31:31Messenger challenges
- 38:42Performance and transport
- 44:46Q&A
related talks
02h 05mSymfony Messenger
23mSymfony Messenger: Messages, Queues, Workers and more
44mAn Introduction to Symfony Messenger
44mSymfony Messenger: Messages, Queues, Workers and more
41mSymfony Messenger: Queues, Workers and Much More!
43mAsync with Messenger, AMQP and Mercure
45mMessy data != Messy code
50mAn Introduction to the Symfony Messenger Component
