I have 500 sub-applications deployed on 500 different servers, as well as a main application, and now there is an MQ. My main application will send messages to the sub-application. There are many functions on the sub-application, all of which require different messages.
Should I open a consumer in the sub-application, or should I open a consumer for each function of the sub-application?
My current plan is to open only one consumer for each sub-application, and then define the specific method of operation in the message sent. The format is as follows:
1 2 3 4 5 6 7 8 9 |
|
When the sub-application gets the message, it decides which method to call based on the action. Then the body is the business data that needs to be processed.
ringa_lee2017-05-17 09:59:34
In your case, you are using MQ to make loosely coupled RPC calls. I don't know what your mq selection is. For example, Kafka, which I am familiar with, can use a topic, and then configure a single consumer group on a single machine, and then write messages according to RPC. Basically, it can be done without duplication or loss, and the upstream and downstream services are decoupled.