Salesforce Certified Heroku Architecture Designer — Question 24
A client wants to create a scalable set of microservices that communicate with each other, where multiple microservices have a public REST API.
Which architecture strategy allows this on Heroku?
Answer options
- A. Each microservice is a separate Heroku app. The microservices communicate by using Apache Kafka as a message bus.
- B. Each microservice is a separate process type in a single Heroku app. The microservices communicate by using Redis as a message bus.
- C. Each microservice is a separate private space. The microservices communicate by using DNS Service Discovery.
- D. Each microservice is a separate process in a single Heroku app. The microservices communicate by using shared memory.
Correct answer: C
Explanation
The correct answer is C, as having each microservice in a separate private space allows for better isolation and scalability, while DNS Service Discovery facilitates their communication effectively. Options A and B are less suitable because they either complicate the architecture or do not align with the requirement for a public REST API, and option D does not provide the necessary inter-process communication capabilities for microservices.