FastAPI 핵심 탐구: Starlette 깊이 파헤쳐보기 FastAPI (파스타피아이)는 사실상 Starlette (스타레테)를 감싼 API (응용 프로그래밍 인터페이스) 래퍼(wrapper)입니다.FastAPI (파스타피아이)를 제대로 이해하려면 먼저 Starlette (스타레테)부터 알아야 하는데요.ASGI (에이지에스아이) 프로토콜 Uvicorn (유비콘)은 공통 인터페이스인 ASGI (에이지에스아이) 프로토콜을 통해 ASGI (에이지에스아이) 애플리케이션과 상호 작용합니다.애플리케이션은 다음 코드를 구현하여 Uvicorn (유비콘)을 통해 정보를 주고받을 수 있습니다.async def app(scope, receive, send): # 가장 간단한 ASGI (에이지에스아이) 애플리케이션 ..
FastAPI + Uvicorn: 엄청난 속도의 기술, 그 뒷이야기를 알아볼까요?Uvicorn이 무엇일까요?답변: Uvicorn은 uvloop와 httptools를 기반으로 구축된 매우 빠른 ASGI(Asynchronous Server Gateway Interface) 서버인데요.asyncio를 기반으로 개발된 가볍고 효율적인 웹 서버 프레임워크입니다.Uvicorn은 처음 설계될 때 두 가지 목표를 달성하는 것을 목표로 했습니다.첫 번째는 uvloop와 httptools를 사용하여 매우 빠른 asyncio 서버를 구현하는 것이었고, 두 번째는 ASGI를 기반으로 최소한의 애플리케이션 인터페이스를 구현하는 것이었습니다.현재 HTTP, 웹소켓, Pub/Sub 브로드캐스트를 지원하며 다른 프로토콜 및 메시지 ..
FastAPI로 파이썬 비동기 IO 완전 정복: 고성능 백엔드 개발의 비밀파이썬은 인터프리터 언어이기 때문에 Django와 같은 전통적인 프레임워크로 백엔드를 구축할 때 Java + Spring에 비해 응답 시간이 길 수 있습니다.하지만 비동기 프레임워크 FastAPI를 사용하면 I/O 집약적 작업의 병렬 처리 능력을 극적으로 향상시킬 수 있는데요.FastAPI는 현재 파이썬 생태계에서 가장 빠른 프레임워크 중 하나로 꼽힙니다.예제 1: 기본 네트워크 비동기 IO설치: pip install fastapi uvicorn 서버 코드: # main.pyfrom fastapi import FastAPIapp = FastAPI()@app.get("/")async def read_root(): return {..