In this article we will get deep into the subject of integrating Microservices in PHP and keeping them loosely coupled. We will focus on integration via messaging, as integration of microservices over HTTP has a lot of drawbacks and requires separate article to tackle. Besides of the details and theory
You may be using asynchronous processing with one of the messaging platforms like RabbitMQ, SQS, Beanstalkd, etc already. Or you may be using one of the frameworks (Ecotone, Symfony Messenger or Laravel Queues) to hide messaging platform details. No matter what you use, sooner or later you will face errors
Message processing becoming more and more popular in PHP. Putting all the logic inside simple Request - Response model becomes not enough for our current system needs. Our applications do more and more. It becomes standard to send an email after registration, call external Services or perform some intensive tasks.
In this article we will be pushing refactor of our Symfony Application to the boundaries. We will focus on dropping boilerplate completely so we can write only the code that matters, allowing us for easy modifications, maintenance and future extensions. We will start with example functionality, which we will be