BFF (Backend for Frontend) Nedir?

İngilizce: Backend for Frontend

BFF, web ve mobil gibi farklı arayüzler için ayrı backend katmanı kurarak API yanıtlarını istemciye göre şekillendirir.

BFF Nedir?

BFF (Backend for Frontend), her istemci türünün ihtiyaçlarına göre ayrı bir backend katmanı tasarlama desenidir. Web paneli, mobil uygulama ve kiosk ekranı aynı çekirdek servislere bağlanabilir; ancak ihtiyaç duydukları veri şekli, performans sınırı ve oturum davranışı farklı olabilir.

Nasıl Çalışır?

BFF katmanı birden fazla servisten veri toplar, gereksiz alanları ayıklar, istemciye uygun yanıt modeli üretir ve bazen oturum veya cihaz özelindeki kuralları uygular. Mobil BFF daha küçük payload ve düşük bağlantı toleransı isterken, yönetim paneli BFF’i daha ayrıntılı filtre ve tablo verisi sunabilir.

Bu desen mikroservislerin doğrudan ön yüze açılmasını engeller, fakat kötü tasarlanırsa iş mantığının dağılmasına yol açabilir.

İş Dünyasında Kullanımı

Farklı ekranları olan SaaS ürünleri, müşteri portalları ve mobil uygulamalarda BFF kullanıcı deneyimini sadeleştirir. API gateway daha çok yönlendirme, güvenlik ve trafik kontrolü katmanıdır; BFF ise belirli bir ön yüzün ihtiyaçlarına göre yanıt biçimlendirir. Microservice mimarilerinde ve REST API kullanan sistemlerde bu ayrım özellikle görünür hale gelir.

BFF seçimi yapılırken ekip sahipliği, cache stratejisi, versiyonlama ve tekrar eden iş kuralları netleştirilmelidir.