Google Professional Cloud Developer Question 56
Select 2Google Cloud PlatformYour team is designing a microservices-based application where different services need to communicate asynchronously. You need a solution that ensures messages are delivered with high durability, and services can scale independently while minimizing operational overhead. Which Google Cloud services should you consider?
- A
Cloud Pub/Sub
- B
Eventarc
- C
Cloud Spanner
- D
Compute Engine
- E
Apache Kafka running on Google Kubernetes Engine (GKE)
Show answer and explanation
Correct answers: A, B
Explanation
Cloud Pub/Sub and Eventarc are Google Cloud services specifically designed for building loosely coupled, asynchronous applications. Pub/Sub is a fully managed messaging service that ensures high durability and scalability, while Eventarc enables event-driven architectures by routing, filtering, and delivering events. Both services are managed solutions that minimize operational burden, making them the best fit for the described scenario. Other options, such as Apache Kafka on GKE, involve higher operational overhead, while services like Cloud Spanner and Compute Engine are not designed for this purpose.
- A. Correct.
Cloud Pub/Sub is designed for asynchronous communication between systems, providing high durability, scalability, and minimal operational overhead. It is a managed service that fits this use case well.
- B. Correct.
Eventarc is ideal for event-driven architectures. It allows for the delivery of events across services and supports loosely coupled systems, making it suitable for asynchronous communication.
- C. Incorrect.
Cloud Spanner is a globally distributed database designed for transactional workloads, not for asynchronous messaging or event-driven communication.
- D. Incorrect.
Compute Engine provides virtual machines and is not inherently designed for asynchronous communication or event-driven architectures. Additional setup and management would be required to use it in this context.
- E. Incorrect.
Apache Kafka running on GKE can provide asynchronous communication, but it requires significant operational overhead compared to fully managed services like Cloud Pub/Sub. This makes it less ideal given the goal of minimizing operational overhead.