Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is an API Gateway in microservices?
An API Gateway is like a receptionist for your microservices. It receives all requests from clients, then routes them to the right service, handles security, and can manage traffic.
Click to reveal answer
beginner
What is Kong used for?
Kong is an open-source API Gateway that helps manage, secure, and monitor APIs. It acts as a middleman between clients and services, making sure requests are handled smoothly.
Click to reveal answer
beginner
How does AWS API Gateway help developers?
AWS API Gateway lets developers create, publish, and manage APIs easily in the cloud. It handles tasks like traffic management, authorization, and monitoring without needing to manage servers.
Click to reveal answer
intermediate
What role does Nginx play as a gateway?
Nginx is a web server that can also act as a reverse proxy or API Gateway. It routes requests to services, balances load, and improves performance by caching and compressing data.
Click to reveal answer
intermediate
Name one key difference between Kong and AWS API Gateway.
Kong is open-source and can be run anywhere, giving more control. AWS API Gateway is a managed service in the AWS cloud, which means less setup but more dependency on AWS.
Click to reveal answer
Which of these is NOT a function of an API Gateway?
AManaging user interface design
BMonitoring API usage
CHandling security and authorization
DRouting requests to services
✗ Incorrect
API Gateways handle routing, security, and monitoring, but they do not manage user interface design.
What type of software is Kong?
ACloud storage service
BOpen-source API Gateway
CDatabase management system
DFrontend framework
✗ Incorrect
Kong is an open-source API Gateway used to manage and secure APIs.
AWS API Gateway is best described as:
AA managed cloud service for APIs
BA local web server
CA database service
DA programming language
✗ Incorrect
AWS API Gateway is a managed service in AWS that helps create and manage APIs.
Nginx can be used as:
AAn operating system
BA database engine
CA reverse proxy and load balancer
DA programming language
✗ Incorrect
Nginx is commonly used as a reverse proxy and load balancer to route and manage traffic.
Which gateway is cloud-managed and requires less setup?
AKong
BNginx
CApache HTTP Server
DAWS API Gateway
✗ Incorrect
AWS API Gateway is a managed cloud service, so it requires less setup compared to self-managed gateways like Kong or Nginx.
Explain the main roles of an API Gateway in a microservices system.
Think about how a receptionist helps direct visitors and keeps things organized.
You got /4 concepts.
Compare Kong and AWS API Gateway in terms of deployment and control.
Consider who manages the service and where it runs.
You got /5 concepts.
Practice
(1/5)
1. Which of the following is a primary role of API gateways like Kong, AWS API Gateway, or Nginx in microservices?
easy
A. Control and protect communication between services
B. Store large amounts of data
C. Run backend business logic
D. Replace databases in microservices
Solution
Step 1: Understand the role of API gateways
API gateways act as a control point for requests between clients and microservices, managing traffic and security.
Step 2: Compare options with gateway functions
Storing data, running business logic, or replacing databases are not typical gateway roles.
Final Answer:
Control and protect communication between services -> Option A
Quick Check:
Gateway role = Control communication [OK]
Hint: Gateways manage traffic and security, not data storage [OK]
Common Mistakes:
Confusing gateways with databases
Thinking gateways run business logic
Assuming gateways store data
2. Which syntax correctly defines a route in Kong's configuration to forward requests to a service?
easy
A. routes:\n - name example-route\n path: '/example'\n service: example-service
B. routes:\n - name: example-route\n paths: ['/example']\n service: example-service
C. routes:\n - name: example-route\n paths: '/example'\n service: example-service
D. routes:\n - example-route:\n paths: ['/example']\n service: example-service
Solution
Step 1: Review Kong route syntax
Kong routes use a list with keys: name, paths (as a list), and service.
Step 2: Identify correct YAML structure
routes:\n - name: example-route\n paths: ['/example']\n service: example-service correctly uses a list with dash, keys with colons, and paths as a list.
A. The request is forwarded to http://backend-service/users
B. The request returns a 404 error
C. The request is blocked by Nginx
D. The request is forwarded to http://backend-service/api/users
Solution
Step 1: Understand Nginx proxy_pass behavior with trailing slash
When proxy_pass URL ends with a slash, Nginx replaces the matching location prefix with the proxy URL path.
Step 2: Apply to given example
Location prefix is /api/, proxy_pass is http://backend-service/, so /api/ is replaced by /, forwarding /users to backend-service.
Final Answer:
The request is forwarded to http://backend-service/users -> Option A
Quick Check:
Trailing slash in proxy_pass removes location prefix [OK]
Hint: Trailing slash in proxy_pass removes location prefix [OK]
Common Mistakes:
Assuming full path is appended
Confusing proxy_pass with or without trailing slash
Thinking request is blocked or 404
4. You configured AWS API Gateway with a resource path /items and a GET method, but requests to /items return 403 Forbidden. What is the most likely cause?
medium
A. The backend service URL is incorrect
B. The API Gateway does not support GET methods
C. The GET method is not deployed or enabled in the stage
D. The client IP is blocked by AWS firewall
Solution
Step 1: Check AWS API Gateway method deployment
Methods must be deployed and enabled in the stage to accept requests.
Step 2: Understand 403 Forbidden meaning in API Gateway
403 often means method exists but is not authorized or deployed, not backend URL or IP block.
Final Answer:
The GET method is not deployed or enabled in the stage -> Option C
Quick Check:
403 = method not deployed/enabled [OK]
Hint: Deploy methods in stage to avoid 403 errors [OK]
Common Mistakes:
Assuming backend URL causes 403
Thinking API Gateway disallows GET
Blaming client IP blocking without evidence
5. You want to use Kong to route requests to two microservices: serviceA at /serviceA and serviceB at /serviceB. Which configuration approach ensures correct routing and avoids path conflicts?
hard
A. Create two routes with the same path ['/service'] for both services
B. Create one route with path ['/'] forwarding to both services
C. Use a single route with no path and rely on backend to differentiate
D. Create two routes with paths ['/serviceA'] and ['/serviceB'], each linked to their respective services
Solution
Step 1: Understand routing by path in Kong
Kong routes requests based on path prefixes to the correct service.
Step 2: Avoid path conflicts by using distinct paths
Separate paths like '/serviceA' and '/serviceB' ensure requests go to the right service without overlap.
Final Answer:
Create two routes with paths ['/serviceA'] and ['/serviceB'], each linked to their respective services -> Option D
Quick Check:
Distinct paths = correct routing [OK]
Hint: Use unique paths per service to avoid conflicts [OK]