Django

Django Channels

WebSockets, ASGI, consumers, routing, channel layers, authentication, real-time features

24 면접 질문·
Senior
1

What is Django Channels?

답변

Django Channels is an extension that adds support for asynchronous protocols to Django, enabling WebSockets, HTTP2, and other non-HTTP protocols. It extends Django's synchronous request-response model by using ASGI (Asynchronous Server Gateway Interface) instead of WSGI, enabling real-time features like chat or push notifications.

2

What is the main difference between WSGI and ASGI?

답변

WSGI (Web Server Gateway Interface) is synchronous and handles only one request at a time per worker, while ASGI (Asynchronous Server Gateway Interface) supports asynchronous operations and persistent connections like WebSockets. ASGI can handle multiple simultaneous connections without blocking, which is essential for real-time applications.

3

What is a Consumer in Django Channels?

답변

A Consumer is the Django Channels equivalent of a Django view for asynchronous connections. It handles the complete lifecycle of a WebSocket connection: connection, message reception, response sending, and disconnection. Consumers can be synchronous (WebsocketConsumer) or asynchronous (AsyncWebsocketConsumer) and allow structuring business logic for each connection type.

4

Which Consumer method is called when a WebSocket connection is established?

5

What is the scope in Django Channels?

+21 면접 질문

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

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

무료로 시작하기