Exam MCIA - Level 1 All QuestionsBrowse all questions from this exam
Question 31

An Order microservice and a Fulfillment microservice are being designed to communicate with their clients through message-based integration (and NOT through

API invocations).

The Order microservice publishes an Order message (a kind of command message) containing the details of an order to be fulfilled. The intention is that Order messages are only consumed by one Mule application, the Fulfillment microservice.

The Fulfillment microservice consumes Order messages, fulfills the order described therein, and then publishes an OrderFulfilled message (a kind of event message). Each OrderFulfilled message can be consumed by any interested Mule application, and the Order microservice is one such Mule application.

What is the most appropriate choice of message broker(s) and message destination(s) in this scenario?

    Correct Answer: B

    Order messages should be sent to a JMS queue, as these messages are commands intended for a single consumer, the Fulfillment microservice. On the other hand, OrderFulfilled messages should be sent to a JMS topic because these messages are events that can be consumed by multiple interested applications, including the Order microservice. Both microservices can interact with the same JMS provider instance, which simplifies the architecture and ensures that scaling challenges are managed for one instance instead of multiple.

Discussion
Pavan_NagineniOption: B

B. Order messages are sent to a JMS queue OrderFulfilled messages are sent to a JMS topic Both microservices interact with the same JMS provider (message broker) instance, which must therefore scale to support the load of both microservices

Outdoor25Option: D

It should be D. The key here is fulfillment app publishes order fulfilled message which needs to be consumed by more than one (order service). this will cause different loads for Order JMS broker vs Order Fulfilled (topif) JMS broker. Hence there is a need to scale them differently. B is correct as well, but there is an unnecessary scaling of one JMS broker to accommodate load of fulfilled messages.

GrumpOption: B

It could be B or D. Leaning more towards B because you do not need to worry about load difference of Order and fulfillment services. fulfillment service will only be processing messages from Order service. orderfulfilled messages an be published on topic which can be consumed by multiple consumers, but number of messages will be same as generated by order service.

_d4d_

This explanation seems apt, based on which I would assume answer should be B

gilofernandesOption: B

one single JMS broker ; Order can be consumed by only one arget, hence queue, OrderFulfilled must be consumed by several targets, hence topic

Viv2005Option: B

A - Incorrect, because OF messages are sent to a queue. But remember queue can only have one consumer, here the many application should be listening for OF message. C - Incorrect, because as per question order MS is designed to communicate through message-based integration. D - Incorrect, 2 message broker is extra cost. 1 MB can handle a good amount of load of many queues and topics. B is the correct answer.

majda091983Option: D

correct answer is D the OrderFulfilled message shoud be publiseh to topic so it can be consumed by any interested Mule application

madgeezerOption: B

B. Order messages are sent to a JMS queue OrderFulfilled messages are sent to a JMS topic Both microservices interact with the same JMS provider (message broker) instance, which must therefore scale to support the load of both microservices

AkanshaR91Option: B

B be right

rodriguescontOption: B

B Cannot be “D” to not make Order Mule App connect to 2 different message brokers (Queue to send messages to Fulfillment and Topic to consume Fulfillment event)