Communicate from micro-service to main application


So I am looking for some solutions. Here is my scenario. I have a web application which is developed in Laravel 5.5 on the back-end and Angular 1.4 on the front end. Also, I have a micro-service in Go Lang. Now what happens is that there is some data that needs to be processed in the micro-service. What I do is send that set of data to RabbitMQ from where the micro-service picks that data and processes it and then stores it in MongoDB. Then the main application, when required, accesses MongoDB and retrieves the data. Now what I want to do is I want to track live the progress of the data processing being done on micro-service side. How micro-service processes the data is that it takes the data set from RabbitMQ and then loops through it and processes it one by one. So what I want is for main application to know whenever on single data item gets processed.

Solution Tried:
I have tried Pusher for it in which I send notification after one data item gets processed and then count number of notifications but that doesn’t work as the event gets subscribed more than once and the count gets messed up.

Other solution in my mind is to use RabbitMQ again but how would I use it bearing in mind that I have front end of the main application in Angular. I can read the RabbitMQ in Laravel but how’d I send that information to front-end?

Any other solutions?

Source: Laravel 5 Questions

Leave a Reply