Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- DFS
- 시뮬레이션
- aws
- boj
- django
- gpdb
- Linked list
- spring boot
- 모의SW역량테스트
- Priority Queue
- BFS
- SWEA
- Vue.js
- Bruth Force
- 코테
- Data Structure
- 구현
- SQL
- 알고리듬
- Trie
- programmers
- Python
- 코딩테스트
- 알고리즘
- CSV
- hash table
- JavaScript
- Back tracking
- Algorithm
- GitHub
Archives
- Today
- Total
hotamul의 개발 이야기
API 호출 (in Backend vs in Frontend), BFF 본문
회사 보안 정책, 제한된 private network 등의 이유로 Backend에서 API 호출과 Frontend에서 API 호출, 어떤 게 더 좋은 선택일까 고민이 되어 블로그를 작성하면서 정리해보고자 한다.
- Backend와 Frontend에서의 API 호출은 각각 장단점이 있다 (당연히 Application의 특정 use case와 요구 사항에 따라 달리질 수 있다...)
- Backend API 호출은 아래와 같은 장점들이 있다.
- improve performance
- hide sensitive data and protect API keys (credential ticket 값들, ...)
- 반면 Frontend API 호출은 아래와 같은 장점이 있다.
- improve user experience
- reduce server load
- Frontend에서의 API 호출이 어려울 때도 있다. (방화벽 정책이나 제한된 private network 접근 제한 등의 이유로..., 내가 겪고 있는 상황!!)
- 이러한 경우, API 서버에 안전하게 접근할 수 있도록 Backend는 Proxy 역할을 해서 Frontend와 API 서버 간 통신을 중재할 수도 있다. 이런 경우를 BFF(Backend For Frontend)라고도 할 수 있으려나?
카카오페이지는 BFF(Backend For Frontend)를 어떻게 적용했을까?를 읽어보니 BFF(Backend For Frontend)는 여러 플랫폼(Web, Mobile, ...)을 지원할 때 주로 사용되는 용어이고, Frontend 만을 위한 중간 서버를 구현하는 것이라고 한다. (아래 그림이 잘 설명해주는 것 같다.)

'etc.' 카테고리의 다른 글
| cgroups을 이용한 메모리 동적 할당 (Facebook 사례 분석) (0) | 2023.03.11 |
|---|---|
| [AWS] Unprotected private key file (0) | 2023.03.08 |
| PCA(Principal Component Analysis)란? (0) | 2023.01.01 |
| Face images dataset (0) | 2023.01.01 |
| What is Processing an Image (Information Extraction) (0) | 2023.01.01 |
Comments