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

[web] ASGI 서버 개념

1,793  

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 최초 웹사이트 구경하기 (= 인터넷 1호 홈페이지 주소)
web 코딩 (제작의뢰/수주) 시, 반드시 (APM/빌더)버전 공유하기
web 원숫자 / 원영문 (= 원문자 = 동그마리 안에 숫자 있는 특수문자)
web 도메인 네임서버 확인 방법 (cmd 모드 경우)
web 구글봇 아이피 국적
web MDN (developer.mozilla.org : 모질라) 사이트 디자인 커스텀
web 그누보드 업데이트 시, 기존 깃허브 퍼머링크 유지
web 그누보드/영카트 (파일/폴더) 자료 저장/보관/관리 노하우
web GeoIP (지오아이피) / ip2nation (아이피투네이션) 비교/차이
web 네이버 웹마스터 등록 (= 네이버 검색기 SEO 최적화) + sitemap (사이트맵) 제출 시 주의사항
web 사이트 CMS(Content Management System: 콘텐츠 관리 시스템 = 제작빌더) 확인 방법
web Apache log4j 취약점 대응 가이드
web 노트북에서 깃허브 코드 깔끔하게 보기 (= 깃허브 코드 글자크기/스타일 지정) ※ 화면 확대/축소 단축키
web PHP - Windows용 PHP 버전 (Thread Safe / None Thread Safe) 의미 차이…
web 갤러리 스킨은 가로 개수 3개 이하 권장
web 스크래핑(scraping), 크롤링(crawling), 파싱(parsing) 개념 정의 차이
web 줄바꿈 기호 (CR, LF, CRLF) 의미 (= 개행문자 = 새줄문자)
web 웹페이지 로드 속도 올리기. (= Page Speed 개선 방법)
web CSS 핵심 3대장/삼대장 (찾기 → 수정 → 반영) = 찾아서 수정 후 변경사항 적용하기
4/19
목록
찾아주셔서 감사합니다. Since 2012