Django

Django Channels

WebSockets, ASGI, consumers, routing, channel layers, 인증, 실시간 기능

24 면접 질문·
Senior
1

Django Channels란 무엇입니까?

답변

Django Channels는 Django에 비동기 프로토콜 지원을 추가하는 확장 기능으로, WebSockets, HTTP2 및 기타 비 HTTP 프로토콜을 처리할 수 있게 합니다. WSGI 대신 ASGI(Asynchronous Server Gateway Interface)를 사용하여 Django의 동기식 요청-응답 모델을 확장하며, 채팅이나 푸시 알림 같은 실시간 기능을 가능하게 합니다.

2

WSGI와 ASGI의 주요 차이점은 무엇입니까?

답변

WSGI(Web Server Gateway Interface)는 동기식이며 워커당 한 번에 하나의 요청만 처리하는 반면, ASGI(Asynchronous Server Gateway Interface)는 비동기 작업과 WebSockets 같은 지속 연결을 지원합니다. ASGI는 블로킹 없이 여러 연결을 동시에 처리할 수 있으며, 이는 실시간 애플리케이션에 필수적입니다.

3

Django Channels에서 Consumer란 무엇입니까?

답변

Consumer는 비동기 연결을 위한 Django 뷰에 해당합니다. WebSocket 연결의 전체 수명 주기(연결, 메시지 수신, 응답 전송, 연결 해제)를 처리합니다. Consumer는 동기식(WebsocketConsumer) 또는 비동기식(AsyncWebsocketConsumer)일 수 있으며 각 연결 유형에 대한 비즈니스 로직을 구조화할 수 있게 합니다.

4

WebSocket 연결이 설정될 때 호출되는 Consumer 메서드는 무엇입니까?

5

Django Channels에서 scope란 무엇입니까?

+21 면접 질문

다음 면접을 위해 Django을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기