BFF란 무엇일까? Feat. Best Friends Forever
BFF(Backend for Frontend)란? 프론트엔드(웹, 모바일, 디바이스 등)별로 특화된 백엔드 API를 따로 두어,
클라이언트가 필요한 데이터와 로직만을 최적화해서 제공하는 아키텍처 패턴. 등장 배경 단일 API 서버(모놀리식, 혹은 단일 백엔드)가 여러 클라이언트(웹, iOS, Android, IoT)에 동일한 응답을 주 다 보니, 불필요한 데이터가 포함되거나 필요한 데이터가 빠지는 문제가 발생. 각 클라이언트의 UX 최적화를 위해 등장한 개념. 왜 필요한가? 클라이언트 맞춤 최적화 웹은 넓은 화면에 많은 데이터가 필요하지만, 모바일은 데이터 사용량이 적고 UI도 간단해야 함 BFF는 각 클라이언트 특성에 맞는 API 응답을 제공 복잡한 API 호출 단순화 여러 마이크로서비스에서 데이터를 모아야 하는 경우, 클라이언트에서 직접 여러 API를 호출하면 복잡해짐 보안 및 정책 제어 인증, 권한 검증, 로깅 등 클라이언트에 따라 달라질 수 있는 정책을 BFF에서 통제 …