PHP Service Bus (publish-subscribe pattern)

v4.1.1 2020-06-21 13:51 UTC


Build Status Code Coverage Scrutinizer Code Quality SymfonyInsight Latest Stable Version License Financial Contributors on Open Collective

A concurrency (based on Amp) framework, that lets you implement an asynchronous messaging, a transparent workflow and control of long-lived business transactions by means of the Saga pattern. It implements the message based architecture and it includes the following patterns: Saga, Publish\Subscribe, Message Bus.

Main Features

  • Сooperative multitasking
  • Asynchronous messaging (Publish\Subscribe pattern implementation)
  • Event-driven architecture
  • Distribution (messages can be handled by different processes)
    • Subscribers can be implemented on any programming language
  • High performance
  • Orchestration of long-lived business transactions (for example, a checkout) with the help of Saga Pattern
  • Full history of aggregate changes (EventSourcing)

Get started

composer create-project php-service-bus/skeleton my-project

Demo application (WIP): service-bus-demo


Documentation can be found in the documentation repository


  • PHP 7.3
  • RabbitMQ
  • PostgreSQL 9.5+


Contributions are welcome! Please read CONTRIBUTING for details.

Communication Channels

You can find help and discussion in the following places:


The MIT License (MIT). Please see LICENSE for more information.