0% found this document useful (0 votes)
12 views14 pages

API Gateway in Microservices Architecture

Uploaded by

vj2713
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views14 pages

API Gateway in Microservices Architecture

Uploaded by

vj2713
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

API GATEWAY

🌐Gateway.
Understanding the Core Problem without API

Modern applications are built using microservices architecture, where a single


application is split into multiple small, independent services. Each service focuses
on one business capability and runs on its own server and port.
In Myapplication:

User Service runs independently

Order Service runs independently

Notification Service runs independently

While this architecture improves scalability and maintainability, it introduces new


challenges. Without any central component, the client must directly
communicate with every service. This creates serious problems in real-world
systems.
Clients need to:

Know every service URL

Know every service port

Handle failures

Manage security separately for each service

This tight coupling between client and services makes the system fragile,
insecure, and hard to scale.
👉 This is the fundamental problem your project addresses.
🌉 What Is an API Gateway

API GATEWAY 1
API GATEWAY 2
An API Gateway is a centralized server that acts as the single entry point for all
client requests in a microservices-based system.
Instead of clients calling services directly, every request goes through the API
Gateway.

Conceptually
Think of an API Gateway as:

A traffic controller

A reverse proxy

A security guard

A request router

All rolled into one component.

🧠 Why API Gateway Is Necessary


1. Client Simplification
Without a gateway, the client needs to know:

Which service handles which request

Which port the service is running on

Whether the service is available

With an API Gateway:

The client communicates with only one URL

The gateway internally decides where the request should go

This decouples the client from internal service architecture.

2. Centralized Request Routing


In your application, the gateway examines the request path:

If the path starts with /user-api , it forwards the request to User Service

API GATEWAY 3
If it starts with /order-api , it forwards to Order Service

If it starts with /notification-api , it forwards to Notification Service

This routing logic is completely hidden from the client.


As a result:

Internal services can change ports

Services can be scaled or replaced

Client remains unaffected

3. Centralized Cross-Cutting Concerns


In real-world systems, every request needs:

Authentication

Authorization

Logging

Monitoring

Rate limiting

Without an API Gateway:

Each service must implement these features

Leads to code duplication and inconsistency

With an API Gateway:

These concerns are handled once

All services automatically benefit

Your project architecture is already prepared for this industry pattern.

🔍Needs
What Is Eureka Server & Why Your Application
It

API GATEWAY 4
Eureka Server is a service discovery mechanism used in distributed systems.

The Core Problem It Solves

API GATEWAY 5
In microservices, services:

Start and stop dynamically

Can scale to multiple instances

May change IP addresses and ports

Hardcoding service URLs becomes impossible and unsafe.

How Eureka Works


Eureka acts like a registry or phonebook:

1. Each microservice registers itself with Eureka on startup

2. Eureka keeps track of:

Service name

Network location

Health status

3. Other components (like API Gateway) query Eureka to discover services

This enables dynamic service communication.

🧩 Application Architecture

API GATEWAY 6
Components and Their Responsibilities

API Gateway
Acts as the entry point

API GATEWAY 7
Routes requests based on URL patterns

Shields internal services from direct access

Eureka Server
Maintains a registry of all services

Enables dynamic discovery

Improves fault tolerance

User Service
Handles user-related operations

Independent and loosely coupled

Order Service
Manages order-related operations

Scales independently

Notification Service
Sends notifications

Can evolve without impacting others

🔁 Complete Request Flow (In Detail)


1. A client sends a request to the API Gateway

2. The gateway receives the request and evaluates its path

3. The gateway identifies the correct microservice

4. The request is forwarded to that service

5. The service processes the request and generates a response

6. The response is sent back to the gateway

7. The gateway forwards the response to the client

API GATEWAY 8
At no point does the client interact directly with internal services.

🔐 Security & Scalability Perspective


Your architecture allows:

Securing all APIs at one point

Adding JWT or OAuth later

Scaling individual services independently

Load balancing multiple service instances

This is exactly how enterprise systems are built.

🧠 Final Conceptual Understanding


Your application:

Solves client-service coupling problem

Introduces service discovery

Uses centralized routing

Is scalable, maintainable, and secure by design

💡 This is a foundation-level microservices architecture, upon which advanced


features like security, resilience, and cloud deployment can be built.

The next page contains the practice code

API GATEWAY 9

You might also like