Synchronous vs. Asynchronous
Which communication pattern blocks the sender until the receiver has processed the request and sent a response?
- Asynchronous Communication
- Synchronous Communication
- Pub/Sub Messaging
- Event-Driven Architecture
- Syncronus Communication
Asynchronous Advantages
Which of the following is a primary benefit of using asynchronous communication in a microservices architecture?
- Reduced latency in request processing
- Stronger data consistency guarantees
- Improved fault tolerance and resilience
- Simplified error handling
- Easier debugging process
Message Queue Selection
Which component is typically used to facilitate asynchronous communication between microservices?
- Load Balancer
- API Gateway
- Message Queue (e.g., RabbitMQ, Kafka)
- Database
- Redis Cache
Pub/Sub Pattern
In the publish-subscribe (Pub/Sub) pattern, what is the role of the 'broker'?
- To directly call the subscribers with updates
- To filter and route messages from publishers to subscribers
- To convert messages from one format to another
- To authenticate and authorize users.
- To provide a single point of failure.
Eventual Consistency
Which consistency model is most commonly associated with asynchronous communication patterns?
- Strong Consistency
- Atomic Consistency
- Immediate Consistency
- Eventual Consistency
- Consistent Hashing
REST API Considerations
Which HTTP method is typically used for creating a new resource in a RESTful API?
- GET
- PUT
- PATCH
- POST
- DELETE
gRPC vs. REST
Which communication protocol generally offers better performance and efficiency compared to REST, especially for internal microservice communication?
- SOAP
- gRPC
- HTTP/1.1
- GraphQL
- RESTful
Circuit Breaker Pattern
What is the primary purpose of the Circuit Breaker pattern in microservice communication?
- To automatically scale the number of microservice instances.
- To prevent cascading failures by stopping requests to failing services.
- To implement authentication and authorization for microservices.
- To monitor the performance of microservices.
- To automatically retry failed requests.
Saga Pattern
Which pattern is commonly used to manage distributed transactions across multiple microservices?
- Two-Phase Commit (2PC)
- Saga Pattern
- Distributed Lock
- Eventual Consistency
- Centralized Transaction Manager
Handling Communication Failures
What is the name for implementing a delay between retries when a communication with a service fails?
- Rate Limiting
- Retry Storm
- Backpressure
- Exponential Backoff
- Dead Letter Queue