S90-09A · Question #18
Service Consumer A sends a message to Service A (1), which then forwards the message to Service B (2). Service B forwards the message to Service C (3), which finally forwards the message to Service…
The correct answer is C. The Intermediate Routing pattern can be applied together with the Service Agent pattern by. Option C is correct because the Intermediate Routing pattern extracts the routing logic scattered across Services A, B, and C into a single dedicated router, collapsing the chain and reducing overall composition size. The Service Agent pattern complements this by allowing the…
Question
Service Consumer A sends a message to Service A (1), which then forwards the message to Service B (2). Service B forwards the message to Service C (3), which finally forwards the message to Service D (4). Services A, B, and C each contain logic that reads the content of the message and, based on this content, determines which service to forward the message to. As a result, what is shown in the Figure is one of several possible runtime scenarios. Currently, this service composition architecture is performing adequately, despite the number of services that can be involved in the transmission of one message. However, you are told that new logic is being added to Service A that will require it to compose one other service in order to retrieve new data at runtime that Service A will need access to in order to determine where to forward the message to. The involvement of the additional service will make the service composition too large and slow. What steps can be taken to improve the service composition architecture while still accommodating the new requirements and avoiding an increase in the amount of service composition members?
Exhibit
Options
- AThe Rules Centralization pattern can be applied to establish a centralized service that contains
- BThe Asynchronous Queuing pattern can be applied together with the Rules Centralization pattern
- CThe Intermediate Routing pattern can be applied together with the Service Agent pattern by
- DNone of the above.
How the community answered
(35 responses)- A29% (10)
- B14% (5)
- C49% (17)
- D9% (3)
Explanation
Option C is correct because the Intermediate Routing pattern extracts the routing logic scattered across Services A, B, and C into a single dedicated router, collapsing the chain and reducing overall composition size. The Service Agent pattern complements this by allowing the new data-retrieval logic Service A requires to be handled by an automated agent that intercepts and enriches messages transparently - without registering as a formal composition member - meaning the new requirement is met without adding a new service to the count.
Option A (Rules Centralization alone) consolidates rule logic but does nothing to shrink the routing chain or prevent the additional data-retrieval service from becoming a composition member; the composition still grows. Option B adds Asynchronous Queuing, which improves throughput and decoupling but still doesn't solve the membership-count problem - you'd have the extra service plus a queue, making things larger, not smaller.
Memory tip: Think "IR + SA = Invisible Routing Assistant." The Intermediate Router owns all routing decisions from the outside, and the Service Agent acts as a silent helper behind the scenes - neither bloats the visible composition.
Topics
Community Discussion
No community discussion yet for this question.
