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.
İlgili Terimler
API Gateway, istemciler ile servisler arasına girerek yönlendirme, kimlik doğrulama, kota, gözlemleme ve sürümleme görevlerini toplar.
MicroserviceMikro hizmet mimarisi, büyük uygulamayı bağımsız geliştirilen, dağıtılan ve ölçeklenen küçük servisler halinde tasarlar.
REST APIREST API, HTTP yöntemleriyle kaynakları okuma ve değiştirme üzerine kurulu, entegrasyonlarda yaygın kullanılan web servis tasarımıdır.