nerdexam
SOA

S90-09A · Question #33

Service Consumer A sends Service A a message containing a business document (1). The business document is received by Component A, which keeps the business document in memory and forwards a copy to…

The correct answer is A. Additionally, Database B is being replaced with a different database product that supports a. Option A is correct because it directly addresses the root-cause infrastructure problem - replacing Database B with a product better suited to the workload resolves the performance bottleneck without conflicting with the architecture's synchronous request-response requirement…

Advanced Service Design and Patterns

Question

Service Consumer A sends Service A a message containing a business document (1). The business document is received by Component A, which keeps the business document in memory and forwards a copy to Component B (3). Component B first writes portions of the business document to Database A (4). Component B writes the entire business document to Database B and then uses some of the data values from the business document as query parameters to retrieve new data from Database B (5). Next, Component B returns the new data back to Component A (6), which merges it together with the original business document it has been keeping in memory and then writes the combined data to Database C (7). The Service A service capability invoked by Service Consumer A requires a synchronous request-response data exchange. Therefore, based on the outcome of the last database update, Service A returns a message with a success or failure code back to Service Consumer A (8). Databases A and B are shared and Database C is dedicated to the Service A service architecture. There are several problems with this architecture: First, the response time of Database A is often poor, resulting in Component B taking too much time to provide a response to Component A. This results in Component A consuming too many runtime resources while it holds the business document in memory and it also causes unreasonable delays in responding to Service Consumer

Options

  • AAdditionally, Database B is being replaced with a different database product that supports a
  • BThe State Repository pattern is applied so that Component A can defer the business document
  • CThe State Repository pattern is applied so that Component A can defer the business document
  • DThe Legacy Wrapper pattern is applied so that Database B is wrapped in a standardized contract.
  • ENone of the above.

How the community answered

(24 responses)
  • A
    63% (15)
  • B
    21% (5)
  • C
    8% (2)
  • D
    4% (1)
  • E
    4% (1)

Explanation

Option A is correct because it directly addresses the root-cause infrastructure problem - replacing Database B with a product better suited to the workload resolves the performance bottleneck without conflicting with the architecture's synchronous request-response requirement, which is a hard constraint Service Consumer A imposes on Service A.

Options B and C both describe the State Repository pattern, which would allow Component A to externalize the in-memory business document, but this pattern introduces asynchronous/deferred behavior that fundamentally conflicts with the synchronous request-response exchange mandated by the service capability - applying it here would break the contract with Service Consumer A, not fix the problem.

Option D (Legacy Wrapper) wraps Database B behind a standardized interface, but this is an abstraction/interoperability pattern; it does nothing to improve Database A's poor response times or Component A's excessive memory consumption, which are throughput and latency problems, not interface problems.

Option E fails because a valid solution does exist.

Memory tip: When a question pairs a synchronous exchange requirement with a pattern that introduces deferred or asynchronous state handling (like State Repository), treat that as an automatic disqualifier - synchronous contracts require a path to completion without deferral.

Topics

#State Repository pattern#business document processing#database migration#service statelessness

Community Discussion

No community discussion yet for this question.

Full S90-09A Practice