반응형
서비스가 분산되는 MSA 구조가 되면서 화면에서 다양한 서버로 호출해야 하는 일이 생기게 되었다.
이를 돕기 위해 BFF 가 등장하게 되었는데 BFF ( Backend For FrontEnd)
프론트엔드를 요구사항에 맞게 구현하기 위한 도움을 주는 보조 서버이다.
하나의 프론트엔드에 대해 하나의 BFF가 있어야 하며 BFF를 프론트엔드 요구사항에 맞게 구현할 수 있다.
BFF에서는 프론트엔드 생선성을 더욱 높이기 위해, 데이터를 통합하는 처리를 담당
BFF를 구현하여 프론트엔드를 백엔드에서 분리된 상태로 유지할 수 있다
BFF는 프론트엔드 요구사항을 충족하기 위해 존재하며, 이상적으로는 프론트엔드 개발자가 빌드 해야 한다.
BFF 미적용 호출
// /api/getCustomer 호출
{
id:1,
userName:'홍길동',
userPhone:'01012345678',
userAddress:'서울특별시',
created:'2023-02-09 14:02:03',
updated:'2023-02-09 14:02:03',
}
// /api/getProduct 호출
{
id:240,
productName:'아이아이 핸드폰케이스-Iphone14Pro',
productPrice:23500,
created:'2022-01-10 13:12:15',
updated:'2022-01-12 14:15:57',
}
// /api/getOrder 호출
{
id:125485,
orderDate:'2023-03-01 12:00:34',
state:3, //state 3은 배송완료 코드이다
}
BFF 적용 호출
// BFF 코드 return 예시
{
userName:'홍길동',
productName:'아이아이 핸드폰케이스-Iphone14Pro',
productPrice:23500,
orderDate:'2023-03-01 12:00:34',
orderState:'배송완료'
}
반응형
'MSA' 카테고리의 다른 글
[도메인 주도 설계로 시작하는 마이크로서비스개발] 3. 마이크로서비스 애플리케이션 아키텍처 (0) | 2021.11.21 |
---|---|
[도메인 주도 설계로 시작하는 마이크로서비스개발] 2. MSA의 이해 (0) | 2021.11.08 |
[도메인 주도 설계로 시작하는 마이크로서비스개발] 1. 아마존 비즈니스 민첩성의 비밀 (0) | 2021.10.29 |