Backend-for-Frontend (BFF) ist ein dediziertes Gateway pro Client-Typ (Web, Mobile, Partner). Anstatt ein generisches Gateway für alle Clients zu verwenden, erhält jedes Frontend ein Backend, das auf seine Anforderungen zugeschnitten ist.
Das Problem, das es löst
Eine Mobile App und eine Web App haben unterschiedliche Anforderungen an Daten, Payload-Größe und Chattiness. Ein einzelnes generisches API erzwingt Kompromisse und Over-Fetching.
Without BFF: With BFF:
All clients Web ─▶ Web BFF ─┐
│ Mobile ─▶ Mobile BFF ─┼─▶ microservices
one generic API Partner ─▶ Partner BFF ─┘
