PROFESSIONAL-CLOUD-DEVELOPER · Question #136
Your development team has been asked to refactor an existing monolithic application into a set of composable microservices. Which design aspects should you implement for the new application? (Choose…
The correct answer is B. Create an API contract agreement between the microservice implementation and microservice E. Implement a versioning scheme to permit future changes that could be incompatible with the. Two architectural best practices are essential when decomposing a monolith into microservices: (B) Defining an explicit API contract between a microservice and its consumers decouples teams, enables independent deployment, and provides a stable interface that consumers can rely…
Question
Your development team has been asked to refactor an existing monolithic application into a set of composable microservices. Which design aspects should you implement for the new application? (Choose two.)
Options
- ADevelop the microservice code in the same programming language used by the microservice
- BCreate an API contract agreement between the microservice implementation and microservice
- CRequire asynchronous communications between all microservice implementations and
- DEnsure that sufficient instances of the microservice are running to accommodate the performance
- EImplement a versioning scheme to permit future changes that could be incompatible with the
How the community answered
(29 responses)- A7% (2)
- B72% (21)
- C14% (4)
- D7% (2)
Explanation
Two architectural best practices are essential when decomposing a monolith into microservices: (B) Defining an explicit API contract between a microservice and its consumers decouples teams, enables independent deployment, and provides a stable interface that consumers can rely on regardless of implementation changes. (E) Implementing a versioning scheme (e.g., /v1/, /v2/ in the URL or Accept headers) allows backward-incompatible changes to be introduced without immediately breaking existing consumers, which is critical in a distributed system with independently deployable services. Option A is incorrect-a core microservices benefit is polyglot architecture; forcing all services to use the same language eliminates this flexibility. Option C is incorrect-synchronous communication (HTTP/gRPC) is valid and often preferable for request/response patterns; mandatory async-only is an unnecessary constraint. Option D describes an operational scaling concern, not an architectural design decision.
Topics
Community Discussion
No community discussion yet for this question.