둘 모두 마이크로 프레임워크다: MSA(Micro Service Architecture) 기반.
* 웹 서비스 개발
1세대 정적 웹 페이지(HTML/CSS)
2세대 동적 웹 페이지(CGI/데이터베이스 활용) -> PHP, JSP, ASP
3세대 MVC 프레임워크(Model, View, Controller)
: 모델-DB, 뷰-화면, 컨트롤러-기능 처리 세 가지 부분으로 코드를 나눔 -> Spring, Django, NestJS
4세대 API 중심 서비스(MSA)
: 한 화면에도 여러 기능이 동시에 소화되므로, 각각의 다양한 기능을 주소로 접근해서 하나의 웹 페이지로 전달해주는 형태로, 안정성과 분산처리에 용이함 -> FastAPI
Flask가 동기 처리 기반인 반면 FastAPI는 비동기 처리 기반이다: 첫번째 요청이 다 끝나기 전에 두번째 요청을 시행하는 방식. (CPU가 '노는 시간'을 최소화 한다) -> DB 쿼리, 서버 간 통신 등 I/O 작업이 많은 애플리케이션에서 유리
FastAPI는 API 작성 시 자동으로 문서 생성(Feat. Swagger)을 하고, Pydantic 데이터 유효성 검사를 내장하고 있어 편리함. -> Flask에서는 써드파티 필요