RabbitMQ with PHP Training Course


RabbitMQ is an open source enterprise messaging broker for storing and retrieving messages passed by processes, applications, and servers. It uses a message queue for processing tasks asynchronously and is especially useful in applications that need to process large data sets in the background, while concurrently responding to live user requests in real-time.

In this instructor-led, live training (online or onsite), participants will learn how to decouple a PHP application, then integrate it with the RabbitMQ messaging system to create distributed cloud applications or microservices.

By the end of this training, participants will be able to:

  • Setup, configure and manage RabbitMQ.
  • Understand RabbitMQ’s role in the design and implementation of a microservice’s architecture.
  • Set up and use RabbitMQ as a broker for handling asynchronous and synchronous messages for real-world PHP applications.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.


  • PHP programming experience


  • Developers

Course Outline


Understanding Microservices (Micro Services) and Message Queuing

Overview of Messaging Protocols: REST, SOAP, AMQP, etc.

How RabbitMQ Implements AMQP to Enable Loose Coupling Among Services

Setting up the Development Environment

Installing and Configuring a RabbitMQ Server

Overview of PHP Clients Libraries

Case Study: Responding to a Request for Downloading a PDF

Creating Producer and Consumer Applications in PHP

Connecting to the RabbitMQ Server

Performing Common RabbitMQ Operations

Sending, Receiving and Queuing Messages

Integrating RabbitMQ into an Existing Application

Routing with Topics Exchange, Direct Exchange, Fanout Exchange and Headers Exchange

Monitoring the RabbitMQ Server

Troubleshooting RabbitMQ

Summary and Conclusion

Leave a Reply

Your email address will not be published. Required fields are marked *