Backend for Frontend (BFF)
BFF, PATTERN, mein, HAR, CLIENT, TYPE, (web, mobile, IoT) ke, liye, EK, SEPARATE, GATEWAY-jaisa, LAYER, banaya, jaata hai — YE, LAYER, MULTIPLE, backend, services, ko, AGGREGATE, karта hai, aur, DATA, ko, US, SPECIFIC, client, ke, liye, TAILOR, karta hai.
Ek, SINGLE, GENERIC, API, (SAARE, clients, ke, liye) aksar, SUBOPTIMAL, hota hai — MOBILE, apps, ko, MINIMAL, data, chahiye, (bandwidth, limited), WEB, apps, ko, MORE, DETAILED, data, chahiye, ho, sakta hai.
// mobile-bff — minimal data:
{ orderId, status, total }
// web-bff — same, order, ke, liye, DETAILED, data:
{ orderId, status, total, items: [...], shippingAddress, paymentDetails }- BFF = har, client, type, ke, liye, ek, ALAG, tailored, API, layer
- Multiple, backend, services, ko, aggregate, karta, hai
- Different, teams, jo, different, clients, own, karti, hain, unke, liye, useful, hai
Kuch, teams, HAR, BFF, ko, CORRESPONDING, frontend, team, se, OWN, karvaте, hain (jaise, mobile, team, mobile-bff, owns, karti, hai) — YE, frontend, teams, ko, apne, backend, needs, PAR, ZYAADA, CONTROL, deta hai bina, backend, teams, ko, block, kiye.
GraphQL, gateway, EK, BFF-jaisi, PROBLEM, SOLVE, karta hai LEKIN, ALAG, tareeke, se — client, EXACTLY, specify, karta hai, ki, KYA, DATA, chahiye, EK, SINGLE, flexible, schema, ke, through, — alag-alag, DEDICATED, BFFs, banaне, ki, JAGAH.
// GraphQL, single, flexible, endpoint:
// query { orderSummary { total, itemCount } } ← mobile, chahta, hai, KAM, data
// query { orderDetails { items { name, price, description } } } ← web, chahta, hai, ZYAADA