Django

Django Channels

WebSockets, ASGI, consumers, routing, channel layers, autenticación, funcionalidades en tiempo real

24 preguntas de entrevista·
Senior
1

¿Qué es Django Channels?

Respuesta

Django Channels es una extensión que añade soporte para protocolos asíncronos a Django, permitiendo WebSockets, HTTP2 y otros protocolos no-HTTP. Extiende el modelo síncrono de petición-respuesta de Django usando ASGI (Asynchronous Server Gateway Interface) en lugar de WSGI, habilitando funcionalidades en tiempo real como el chat o las notificaciones push.

2

¿Cuál es la principal diferencia entre WSGI y ASGI?

Respuesta

WSGI (Web Server Gateway Interface) es síncrono y gestiona solo una petición a la vez por worker, mientras que ASGI (Asynchronous Server Gateway Interface) admite operaciones asíncronas y conexiones persistentes como WebSockets. ASGI puede gestionar múltiples conexiones simultáneas sin bloquear, lo cual es esencial para las aplicaciones en tiempo real.

3

¿Qué es un Consumer en Django Channels?

Respuesta

Un Consumer es el equivalente de una vista Django para las conexiones asíncronas. Gestiona el ciclo de vida completo de una conexión WebSocket: conexión, recepción de mensajes, envío de respuestas y desconexión. Los Consumers pueden ser síncronos (WebsocketConsumer) o asíncronos (AsyncWebsocketConsumer) y permiten estructurar la lógica de negocio para cada tipo de conexión.

4

¿Qué método de un Consumer se llama al establecer una conexión WebSocket?

5

¿Qué es el scope en Django Channels?

+21 preguntas de entrevista

Domina Django para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis