A pure PHP implementation of the AMQP 0-9-1 protocol for communicating with RabbitMQ.
php-amqplib is a pure PHP client library that implements the AMQP 0-9-1 protocol, allowing PHP applications to communicate with RabbitMQ message brokers. It provides the tools needed to publish and consume messages, enabling asynchronous communication and decoupled architecture in PHP-based systems.
PHP developers building applications that require message queuing, such as microservices, event-driven systems, or background job processing with RabbitMQ.
As the most widely used PHP client for RabbitMQ, it offers a reliable, feature-complete implementation without external dependencies, with strong community support and regular maintenance.
The most widely used PHP client for RabbitMQ
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Requires no external PHP extensions, ensuring broad compatibility and easy deployment across diverse PHP environments without additional setup.
Implements the complete AMQP 0-9.1 protocol and RabbitMQ extensions like publisher confirms and consumer cancel notify, tested against RabbitMQ.
Includes mechanisms for network error handling and automatic reconnection, crucial for maintaining production stability in distributed systems.
Features batch publishing and message reuse to reduce overhead, improving throughput for high-volume message processing.
Connection recovery must be implemented manually via exception handling, requiring additional boilerplate code for robust applications, as shown in the demo.
Direct exposure to AMQP protocol specifics means more boilerplate and a steeper learning curve, unlike higher-level abstraction libraries.
As a pure PHP library, it may incur higher CPU and memory usage compared to compiled extensions like AMQP, impacting high-throughput scenarios.