awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
php-amqplib avatar

php-amqplib/php-amqplib

0
View on GitHub↗
4,597 stars·1,026 forks·PHP·LGPL-2.1·6 vueswww.rabbitmq.com/getstarted.html↗

Php Amqplib

php-amqplib is a PHP library that implements the AMQP protocol to enable communication between applications and message brokers. It provides the necessary tools to integrate PHP applications with RabbitMQ for sending and receiving messages across decoupled services.

The library supports a wide range of messaging patterns, including asynchronous task processing, event-driven architectures, and remote procedure calls using correlation identifiers. It manages the full message lifecycle through publishing, queue declaration, and flexible consumption models using either push-based subscriptions or pull-based polling.

The project covers routing and topology management via exchange bindings and provides reliability features such as durable queues, persistent publishing, and explicit message acknowledgments. It also includes traffic management capabilities like message prefetch limiting and virtual channel multiplexing to optimize resource use.

Connection stability is handled through multi-host support and signal-driven heartbeat management.

Features

  • AMQP Protocol Clients - Implements the AMQP protocol client to allow PHP applications to communicate with message brokers.
  • Durable Queue Definitions - Provides the ability to create durable and exclusive queues that survive broker restarts.
  • Delivery Acknowledgements - Implements a handshake protocol requiring explicit confirmation signals before messages are removed from the broker.
  • Message Routing - Implements routing logic to distribute messages from publishers to one or many consumers using federation rules.
  • Server-Pushed Message Streams - Enables the broker to stream messages to the client as they arrive without requiring constant polling.
  • Message Rejections - Allows consumers to reject failed messages, triggering either a discard or a return to the queue for reprocessing.
  • Queue Declarations - Allows programmatic definition and creation of queues with specific durability and exclusivity settings.
  • RabbitMQ Publishers - Provides capabilities for sending authenticated byte arrays to named RabbitMQ queues.
  • Queue and Exchange Orchestration - Manages the structural relationship and routing logic between message exchanges and specific queues.
  • Broker Disk Persistence - Sets message delivery modes that write data to disk, ensuring messages survive a broker restart.
  • RabbitMQ Integrations - Provides a comprehensive PHP implementation for producing and consuming messages through RabbitMQ brokers.
  • TCP Socket Clients - Establishes raw TCP socket clients to transmit binary data streams between the application and messaging host.
  • Message Acknowledgement Handlers - Provides explicit and automatic message acknowledgement handlers to control message removal from the broker.
  • Message Delivery Guarantees - Ensures reliable message transmission using explicit acknowledgments and data replication across clusters.
  • Consumption Models - Supports multiple message consumption models, including push-based subscriptions and pull-based polling.
  • Exchange-Based Routing - Provides routing via specialized exchange types including direct matching, broadcast fanout, and pattern-based topics.
  • Binary Frame Serialization - Translates high-level message objects into binary frames for efficient network transmission via the AMQP protocol.
  • Virtual-Host Isolation - Implements isolation of users and queues into separate virtual host environments within a single broker.
  • Asynchronous Task Processing - Offloads heavy computational work to background workers via a message broker to maintain application responsiveness.
  • Batch Publishing - Optimizes network throughput by grouping multiple messages for a single exchange and routing key.
  • Decoupled Communication Services - Connects decoupled services through a standardized messaging protocol to exchange data without direct dependencies.
  • Consumer Prefetch Limits - Balances worker workloads by capping the number of unacknowledged messages a consumer can receive.
  • Remote Procedure Calls - Implements mechanisms for executing functions on remote servers via request-response patterns over RabbitMQ queues.
  • Virtual Channel Multiplexing - Simulates multiple independent communication sessions over a single TCP connection to reduce system resource overhead.
  • Asynchronous Service Decoupling - Uses queues to prevent producers from blocking while waiting for consumers to process data.
  • Event-Driven Architectures - Enables the construction of reactive systems that route events to multiple independent consumers.
  • Integrated Event Storage and Streaming - Supports appending events to persistent streams that can be read and sought independently by multiple consumers.
  • Connection Heartbeats - Manages periodic heartbeats using signal triggers to verify server responsiveness and keep connections alive.
  • Request Correlation Tokens - Uses unique correlation identifiers to link asynchronous responses back to their original requests for RPC patterns.

Historique des stars

Graphique de l'historique des stars pour php-amqplib/php-amqplibGraphique de l'historique des stars pour php-amqplib/php-amqplib

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Php Amqplib

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Php Amqplib.
  • streadway/amqpAvatar de streadway

    streadway/amqp

    4,932Voir sur GitHub↗

    This is a Go client library and protocol implementation for interacting with message brokers using the AMQP 0.9.1 standard. It serves as an asynchronous messaging toolkit and message queue client for implementing producer and consumer patterns. The library provides a programmatic interface for managing the full message lifecycle, including publishing, consumption, and delivery acknowledgments. It supports reliable delivery mechanisms such as publishing confirmations and atomic transactions. The project covers the administration of routing topologies through the declaration and binding of que

    Goamqpgoprotocol
    Voir sur GitHub↗4,932
  • doocs/advanced-javaAvatar de doocs

    doocs/advanced-java

    78,987Voir sur GitHub↗

    This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency design, distributed systems, and microservices architecture. It provides detailed strategies for decomposing monolithic applications, managing service discovery, and implementing the architectural patterns required for scalable backend environments. The repository distinguishes itself through an extensive collection of big data algorithmic references and database scaling strategies. It covers memory-efficient techniques for analyzing massive datasets, such as Top-K element extrac

    Javaadvanced-javadistributed-search-enginedistributed-systems
    Voir sur GitHub↗78,987
  • bogdanp/dramatiqAvatar de Bogdanp

    Bogdanp/dramatiq

    5,136Voir sur GitHub↗

    Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It functions as an asynchronous task orchestrator that enables the distribution of computational tasks across a cluster using a pluggable transport layer supporting RabbitMQ and Redis. The framework provides specialized tools for complex task orchestration, including the ability to link background jobs into sequences, pipelines, and barriers. It further manages distributed concurrency through the use of shared mutexes, rate limiters, and exponential backoff retries to prevent re

    Pythondistributed-lockpythonrabbit
    Voir sur GitHub↗5,136
  • vyuldashev/laravel-queue-rabbitmqAvatar de vyuldashev

    vyuldashev/laravel-queue-rabbitmq

    2,117Voir sur GitHub↗

    This project provides a queue driver that integrates RabbitMQ as a message broker within the Laravel framework. It acts as a bridge between the application and the broker, enabling asynchronous task offloading and distributed system integration by mapping framework-specific job dispatching commands to the native AMQP protocol. The driver is designed to be compatible with the native dashboard interface for monitoring and managing background jobs. It supports high-volume job processing through persistent connection streaming, which maintains long-lived network sockets to the broker to reduce la

    PHPamqphorizonlaravel
    Voir sur GitHub↗2,117
Voir les 30 alternatives à Php Amqplib→

Questions fréquentes

Que fait php-amqplib/php-amqplib ?

php-amqplib is a PHP library that implements the AMQP protocol to enable communication between applications and message brokers. It provides the necessary tools to integrate PHP applications with RabbitMQ for sending and receiving messages across decoupled services.

Quelles sont les fonctionnalités principales de php-amqplib/php-amqplib ?

Les fonctionnalités principales de php-amqplib/php-amqplib sont : AMQP Protocol Clients, Durable Queue Definitions, Delivery Acknowledgements, Message Routing, Server-Pushed Message Streams, Message Rejections, Queue Declarations, RabbitMQ Publishers.

Quelles sont les alternatives open-source à php-amqplib/php-amqplib ?

Les alternatives open-source à php-amqplib/php-amqplib incluent : streadway/amqp — This is a Go client library and protocol implementation for interacting with message brokers using the AMQP 0.9.1… doocs/advanced-java — This project is a comprehensive Java backend engineering guide and technical reference focused on high-concurrency… bogdanp/dramatiq — Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It… vyuldashev/laravel-queue-rabbitmq — This project provides a queue driver that integrates RabbitMQ as a message broker within the Laravel framework. It… squaremo/amqp.node — amqp.node is a Node.js client and asynchronous messaging middleware designed for communicating with message brokers… pika/pika — Pika is a Python client library for implementing communication between applications and message brokers using the AMQP…