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

[web] ASGI 서버 개념

1,798  

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 네이버톡톡 (무료 채팅) 시작하는 방법
web 경쟁사 웹사이트 무단 크롤링은 데이터베이스권 침해 (= 무단 파싱 위법성 인정)
web CSS - 클래스만 적은 경우와 요소명 뒤에 클래스 붙인 경우 차이
web 리눅스에서 mysql 접근 명령어 입력 시 주의 사항
web 아톰 에디터 빠른 코딩 사용법
web 개발 도구 - 버전 관리 시스템 , 소스 편집기
web 코딩 야학 & 생활코딩 좌표 (코야 & 생코)
web Dev C++ 기본 라이브러리 소스코드 확인하는 법
web 추천 비추천 (공감, 비공감) 버튼의 이중성 성격
web 불법 복제물 링크 행위는 저작권법 위반 아니다.
web 피봇 (Pivot) - 와이드 화면을 90도 회전해 세로로 길게 보는 기능
web 홈페이지 차단 가능 경우 및 중요 범죄 법적 처벌 수준
web 네이버에 사이트 노출 안 될 때 조치사항 (= 네이버 고객센터 연락처)
web 홈페이지 로딩이 오래걸릴 때 점검 사항
web 자바스크립트에 <!-- //--> 넣는 이유 (= JS에 HTML 주석 사용 이유)
web 표정 특수문자 ★
web 특수문자입력법 (자음 > 한자키 > Tab키)
web 클라우드플레어 (cloudflare) 장단점
web TLD (Top Level Domain) - 최상위 도메인 (=톱레벨 도메인) (예: com. net. or…
web 굿빌더 라이센스
12/19
목록
찾아주셔서 감사합니다. Since 2012