ایک API gateway ایک واحد داخلہ نقطہ ہے جو آپ کی microservices کے سامنے بیٹھا ہوتا ہے۔ Clients gateway کو کال کرتے ہیں، جو requests کو صحیح سروس میں روٹ کرتا ہے اور cross-cutting concerns کو سنبھالتا ہے۔
ایک API gateway ایک واحد داخلہ نقطہ ہے جو آپ کی microservices کے سامنے بیٹھا ہوتا ہے۔ Clients gateway کو کال کرتے ہیں، جو requests کو صحیح سروس میں روٹ کرتا ہے اور cross-cutting concerns کو سنبھالتا ہے۔
/orders/* کو orders service میں آگے بھیجیں۔ ┌─────────────────────────────┐
Clients ─▶│ API Gateway │
│ auth · rate-limit · route │
└──┬──────────┬──────────┬────┘
▼ ▼ ▼
Orders Payments Users
# gateway routes
routes:
- path: /orders/**
service: orders-service # forward order traffic here
rateLimit: 100/min # throttle abusive clients
- path: /users/**
service: users-service
auth: required # gateway enforces auth before routing
Gateway ایک single point of failure اور bottleneck بن سکتا ہے۔ اسے بہت دستیاب رکھیں اور business logic کو اس سے باہر رکھیں۔
ایک gateway ہر سروس کو auth، rate limiting، اور TLS کو دوبارہ لاگو کرنے سے آزاد کرتا ہے، اور clients کو درجنوں کے بجائے ایک مستحکم URL دیتا ہے۔
اس کے بغیر، clients کو ہر سروس کا پتہ معلوم ہونا چاہیے اور cross-cutting logic کو ڈپلیکیٹ کرنا چاہیے، جو جلد ہی ناقابل انتظام ہو جاتا ہے۔