
Django Async y ASGI
ASGI vs WSGI, async views, sync_to_async, async_to_sync, limitaciones del ORM sync, rendimiento async, database connection pooling
1¿Cuál es la principal diferencia entre WSGI y ASGI?
¿Cuál es la principal diferencia entre WSGI y ASGI?
Respuesta
ASGI (Asynchronous Server Gateway Interface) amplía WSGI agregando soporte para programación asíncrona y conexiones persistentes como WebSockets. WSGI es síncrono y solo puede manejar una solicitud a la vez por worker, mientras que ASGI puede gestionar varias solicitudes simultáneamente en un solo proceso gracias al event loop de asyncio.
2¿Cómo declarar una vista asíncrona en Django?
¿Cómo declarar una vista asíncrona en Django?
Respuesta
Una vista asíncrona en Django se declara simplemente usando la palabra clave async antes de def. Django detecta automáticamente si la vista es asíncrona y la ejecuta en el event loop apropiado. Esta sintaxis nativa de Python 3.5+ está totalmente soportada desde Django 3.1.
3¿Cuál es el papel de sync_to_async en Django?
¿Cuál es el papel de sync_to_async en Django?
Respuesta
sync_to_async es un adaptador proporcionado por asgiref que permite ejecutar código síncrono dentro de un contexto asíncrono. Envuelve una función síncrona y la ejecuta en un thread pool separado, evitando así bloquear el event loop. Esto es esencial para llamar al ORM de Django desde una vista async, ya que el ORM es síncrono.
¿Por qué no se puede usar el ORM de Django directamente en una vista asíncrona?
¿Cuál es el papel de async_to_sync en Django?
+23 preguntas de entrevista
Otros temas de entrevista Django
Fundamentos de Python
Python orientado a objetos
Fundamentos de Django
Models Django - Fundamentos
Vistas de Django
Plantillas Django
Formularios Django
QuerySets avanzados
Autenticación en Django
Middleware de Django
Django Admin
Django REST Framework
Señales de Django
Carga de archivos
Caché de Django
Sesiones de Django
Email en Django
Testing en Django
Seguridad de Django
Despliegue de Django
Django ORM avanzado
Rendimiento de Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django en un ecosistema de microservicios
Comandos personalizados de Django
Internacionalización en Django
Patrones de Diseño en Django
Settings y configuración de producción
Observabilidad y monitoreo
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