Coordinating Microservices Flashcards
What are the 2 primary patterns for coordinating communication between Microservices?
- Orchestration pattern
- Choreography pattern
The Orchestration pattern is centralized (i.e. an orchestrator coordinates the communication between services). Cloud Workflows can be used to to implement the Orchestration pattern.
The Choreography pattern is decentralized (i.e. services coordinate communication with other services on their own). Pub/Sub can be used to implement the Choreography pattern.
What is Eventarc?
Eventarc is a fully managed eventing system that makes building event-driven applications easy. Eventarc supports many GCP services as event sources. Eventarc uses Pub/Sub as its transport layer.
Eventarc is an abstraction layer on top of Pub/Sub that provides significant benefits when designing event-driven applications.
When using Eventarc, most Google Cloud or custom services can act as an event producer.
What is Workflows?
Workflows is a fully-managed orchestration platform that executes services in the order that you define.
The workflow handles retries or exceptions thrown by APIs, improving the reliability of the entire process.
The steps that need to be executed in your Workflows instance are specified in a YAML or JSON file.
What is Cloud Tasks?
Cloud Tasks is similar to Pub/Sub. However, Cloud Tasks differs in that it has full control of the task execution. In other words, Cloud Tasks controls when the task/service is executed, whereas with Pub/Sub, the publisher has 0 control over the consumer service.
What Google service can you use if you need to schedule jobs to execute at fixed intervals?
Cloud Scheduler