https://github.com/php-service-bus/service-bus
PHP Service Bus (publish-subscribe pattern) implementation
https://github.com/php-service-bus/service-bus
amphp async command-bus event-sourcing messaging publish-subscribe
Last synced: 10 months ago
JSON representation
PHP Service Bus (publish-subscribe pattern) implementation
- Host: GitHub
- URL: https://github.com/php-service-bus/service-bus
- Owner: php-service-bus
- License: mit
- Created: 2017-08-28T17:11:45.000Z (over 8 years ago)
- Default Branch: v5.1
- Last Pushed: 2025-02-04T13:42:43.000Z (about 1 year ago)
- Last Synced: 2025-05-15T03:05:08.896Z (10 months ago)
- Topics: amphp, async, command-bus, event-sourcing, messaging, publish-subscribe
- Language: PHP
- Homepage:
- Size: 2.8 MB
- Stars: 349
- Watchers: 21
- Forks: 18
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-amphp - php-service-bus/service-bus - Service Bus (publish-subscribe pattern) implementation (Unsorted yet / Tunnel)
README
[](https://packagist.org/packages/php-service-bus/service-bus)
[](https://packagist.org/packages/php-service-bus/service-bus)

[](https://codecov.io/gh/php-service-bus/service-bus)
[](https://shepherd.dev/github/php-service-bus/service-bus)
[](https://packagist.org/packages/php-service-bus/service-bus)
[](https://packagist.org/packages/php-service-bus/service-bus)
[](https://opencollective.com/php-service-bus)
### Introduction
A concurrency (based on [Amp](https://github.com/amphp)) 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](https://www.enterpriseintegrationpatterns.com/patterns/messaging/Messaging.html) 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 applications)
- Subscribers can be implemented on any programming language
- [High performance](https://github.com/php-service-bus/performance-comparison)
- Orchestration of long-lived business transactions (for example, a checkout) with the help of Saga Pattern
- Full history of aggregate changes (EventSourcing)
### See it in action
Jump into our [Quick Start](.documentation/quick_start.md) and build your first distributed solution in just 15 minutes.
### Documentation
Documentation can be found in the `.documentation` directory
* [Installation](.documentation/installation.md)
### Requirements
- PHP >=8.1
- RabbitMQ/Redis/Nsq
- PostgreSQL
Contributions are welcome! Please read [CONTRIBUTING](.github/CONTRIBUTING.md) for details.
### Communication Channels
You can find help and discussion in the following places:
* [Telegram chat (RU)](https://t.me/php_service_bus)
* [Twitter](https://twitter.com/PhpBus)
* Create issue [https://github.com/php-service-bus/service-bus/issues](https://github.com/php-service-bus/service-bus/issues)
## Contributing
Contributions are welcome! Please read [CONTRIBUTING](.github/CONTRIBUTING.md) for details.
### License
The MIT License (MIT). Please see [LICENSE](./LICENSE.md) for more information.