• 회원가입
  • 로그인
  • 구글아이디로 로그인

[web] ASGI 서버 개념

1,844  

ASGI 서버 

1. ASGI 정의

 

  • ASGI(Asynchronous Server Gateway Interface)는 비동기 웹 애플리케이션을 위한 서버와 프레임워크 간의 표준 인터페이스임. 
  • ASGI는 WSGI(웹 서버 게이트웨이 인터페이스)의 확장으로, 주로 Python에서 비동기 웹 애플리케이션을 구축하기 위해 사용됨.
  • ASGI 서버는 비동기적으로 요청을 처리하고 응답을 생성할 수 있는 서버를 의미함. 이는 대량의 동시 연결을 다루거나 긴 지속적인 연결을 처리하는 데 특히 유용함.



2. ASGI의 특징과 동작 방식


  1. 비동기 처리: ASGI는 비동기 처리를 지원하여 여러 클라이언트의 동시 요청을 처리할 수 있음. 이는 높은 동시성을 갖는 웹 애플리케이션에서 성능 향상을 가져옴.
  2. 웹 소켓 및 긴 연결 지원: ASGI는 웹 소켓과 같은 실시간 통신을 지원하며, 긴 지속적인 연결을 효과적으로 다룰 수 있음.
  3. 이벤트 루프 사용: ASGI 서버는 이벤트 루프를 사용하여 비동기 이벤트를 효율적으로 처리함. 이는 IO(=입출력) 바운드 작업을 효율적으로 처리할 수 있도록 함.
  4. Middleware 및 라우팅: ASGI는 미들웨어 및 라우팅을 지원하여 요청 및 응답을 처리하는 중간 계층을 구성 가능함.


PS.

  • 가장 많이 사용되는 ASGI 서버 중 하나는 Uvicorn으로, Uvicorn은 FastAPI와 같은 ASGI 애플리케이션을 실행하는 데 사용되며, Python의 비동기 기능을 활용하여 성능을 최적화 함.
  • ASGI는 Django, Starlette, FastAPI 등과 같은 웹 프레임워크에서 활용되고 있음.

 

 


분류 제목
web 브라우저별 HTML5 태그 지원 확인하는 법
web 드래그 앤 드랍 (=드래그 앤 드롭 Drag and Drop) 정의
web MariaDB 글자 깨짐 오류 에러 해결
web 태그에 자주 사용되는 용어 정의 : 요소(=태그), 속성, 속성값
web letsencrypt 보안인증서 갱신 오류 해결 - too many certificates (5) alrea…
web (구글・네이버) 검색 포털에 사이트 서브링크 노출 원리
web 무료 캡쳐 유틸 소개 및 이용 후기 - (오썸 스크린샷 / 픽픽 / 젯그린샷 / 오픈캡쳐 / 알캡쳐 / 갈무…
web github 사용법 (=빌더 업데이트 때 파일 삭제 변경 추가 내역 확인법)
web 특수문자입력법 (자음 > 한자키 > Tab키)
web 저작권 보호 영문 표기
web ChatGPT 「Network Error (네트워크 에러)」 해결방법 ※ 챗지피티 오류 해결
web PHP - binary-safe 함수 (= 이진안전함수 = 바이너리세이프함수) 의미
web DNS 무료 사이트 모음 (DNS Free Site Collection)
web 파일질라 특정확장자파일만 다운로드 (= 문서파일만 다운 = 용량 큰 첨부파일 제외 다운로드 = 특정파일 필터…
web (URI / URL) 개념 차이/비교
web 코딩/프로그래밍 배우려는 (사람 유형별 / 공부 목적별) 공부 시작 언어 추천
web Tab(탭) vs Whitespace(공백) 차이점(장단점)
web HTML (Hypertext Markup Language, 하이퍼텍스트 기술용 언어)
web 알아두면 유용한 글작성 단축키 모음
web 도메인포워딩 개념 및 종류 (고정포워딩, 유동포워딩)
13/19
목록
찾아주셔서 감사합니다. Since 2012