ddd-module/broadway-bundle) integrates Broadway, a PHP event-sourcing library, into Symfony, making it a strong fit for architectures requiring auditability, replayability, and eventual consistency. Ideal for domains where domain-driven design (DDD) principles (e.g., aggregates, commands, events) are prioritized.broadway/event-store-doctrine, broadway/event-store-pdo). Requires explicit configuration for production-grade durability.Messenger or Console components, though overlap may require careful design (e.g., middleware alignment).CommandBus, EventStore).config/packages/broadway.yaml.broadway/event-store-doctrine for PostgreSQL/MySQL).Messenger (e.g., for long-running workflows).EventDispatcher or a dedicated event bus (e.g., RabbitMQ).Order).CreateOrderCommand) and one event (e.g., OrderCreated).CommandBus.broadway-bundle docs for exact versions).broadway/event-store-mongodb.EventStore outside Doctrine transactions).| Phase | Tasks | Dependencies |
|---|---|---|
| 1. Setup | Install bundle, configure broadway.yaml, add in-memory store. |
Symfony Flex, Composer. |
| 2. Core Domain | Model aggregates, commands, and events. | DDD knowledge. |
| 3. Persistence | Migrate to persistent event store (e.g., Doctrine). | Database schema, connection. |
| 4. Read Models | Implement projections (e.g., Elasticsearch, Doctrine entities). | Event store stability. |
| 5. Integration | Connect to existing services (e.g., APIs, queues). | API contracts, auth. |
| 6. Observability | Add logging, metrics, and monitoring. | Infrastructure tools (Prometheus, etc.). |
#qandidate (unreliable for urgent issues).CommandBus is stateless; scale workers horizontally.How can I help you explore Laravel packages today?