22 cards · Public · Shuffle

System Design - Microservices Architecture & API Design

Master robust system design with this high-yield flashcard deck on Microservices Architecture and API Design. Dive into service decomposition, inter-service communication patterns, data consistency, and best practices for building scalable, resilient software systems.

Cards in this deck

(22 cards)

Preview terms and definitions before starting your study session.

#1
Term
What is the core principle behind microservices architecture?
Definition
Microservices architecture structures an application as a collection of loosely coupled, independently deployable services, each responsible for a specific business capability or bounded context.
#2
Term
Explain the Single Responsibility Principle (SRP) in the context of microservices.
Definition
SRP dictates that each microservice should have one and only one reason to change, meaning it should be responsible for a single, well-defined business capability. This promotes modularity and maintainability.
#3
Term
What does 'independent deployment' mean in microservices?
Definition
Independent deployment means that each microservice can be developed, tested, and deployed without affecting or requiring redeployment of other services in the system. This enables faster release cycles and reduces coordination overhead.
#4
Term
What problem does Service Discovery solve in a microservices architecture?
Definition
Service discovery allows client applications and other services to find the network location (IP address and port) of a service instance. This is crucial in dynamic environments where service instances scale up/down or change locations frequently.
#5
Term
Differentiate between Client-side and Server-side Service Discovery.
Definition
In Client-side discovery, the client queries a service registry (e.g., Eureka, Consul) to get available service instances and then directly calls one. In Server-side discovery, the client makes a request to a router/load balancer (e.g., AWS ELB, Nginx) which queries the service registry and forwards the request to an available service instance.
#6
Term
What is an API Gateway and what are its primary functions?
Definition
An API Gateway is a single entry point for all clients into a microservices system. Its primary functions include request routing, authentication/authorization, rate limiting, load balancing, caching, and protocol translation.
#7
Term
List common inter-service communication patterns.
Definition
Common patterns include synchronous HTTP/REST, synchronous gRPC, and asynchronous message-based communication using message queues (e.g., Kafka, RabbitMQ) or event streams.
#8
Term
What are the key characteristics of RESTful API design?
Definition
RESTful APIs are stateless, use standard HTTP methods (GET, POST, PUT, DELETE), operate on resources identified by URIs, and often return data in JSON or XML format. They emphasize a client-server architecture and uniform interface.
Showing 8 of 22 cards in this deck.
Study All Now