티스토리 뷰

이것저것

WSGI / ASGI / WAS 관계

spaces25 2025. 11. 27. 10:09
반응형

📌 WSGI / ASGI / WAS 관계 그림

 
      [Client]
         │
         ▼
      [Web Server]
   (Nginx, Apache 등)
         │
         ▼
+--------------------------+
|        WAS(Server)       |
|  Gunicorn / Uvicorn 등   |
+--------------------------+
         │
         ▼
+--------------------------+
|   App Interface Layer    |
|  WSGI (Flask/Django)    |
|  ASGI (FastAPI/Starlette)|
+--------------------------+
         │
         ▼
+--------------------------+
|    Web Application       |
|  Flask / Django / FastAPI|
+--------------------------+
         │
         ▼
      [Database / 기타]

🔹 단계별 설명

  1. Client → Web Server(Nginx)
    • HTTP 요청을 수신
    • 정적 파일, SSL, 로드밸런싱 처리
  2. Web Server → WAS(Gunicorn / Uvicorn)
    • 요청을 실제 애플리케이션 코드로 전달
    • WAS가 요청 처리 및 응답 생성
  3. WAS → App Interface(WSGI/ASGI)
    • WAS와 애플리케이션 사이의 “약속된 인터페이스”
    • WSGI: 동기 Python 앱용
    • ASGI: 비동기 Python 앱용
  4. App Interface → Application(FastAPI / Flask / Django)
    • 실제 라우트 처리, 비즈니스 로직 실행
    • 결과를 WAS에게 반환
  5. WAS → Web Server → Client
    • WAS가 응답을 다시 웹 서버로 전달
    • 웹 서버가 클라이언트에게 응답

🔹 핵심 포인트

 

개념 역할
WAS 애플리케이션 코드를 실제로 실행, 요청/응답 처리
WSGI/ASGI WAS ↔ 앱 사이의 표준 인터페이스
Web Server 요청 수신, 정적 파일 처리, 보안, 로드밸런싱
Application 실제 라우트, 로직, 데이터 처리
반응형

'이것저것' 카테고리의 다른 글

vi 명령어 정리  (0) 2025.11.28
Google gemini 란?  (0) 2025.11.26
Firebase 란?  (0) 2025.11.13
Supabase란?  (0) 2025.11.13
Eclipse 자주 사용하는 기능 및 단축키  (0) 2025.08.22
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
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 29 30 31
글 보관함