
Django Async & ASGI
ASGI vs WSGI, async views, sync_to_async, async_to_sync, limites ORM sync, performance async, database connection pooling
1Quelle est la principale différence entre WSGI et ASGI ?
Quelle est la principale différence entre WSGI et ASGI ?
Réponse
ASGI (Asynchronous Server Gateway Interface) étend WSGI en ajoutant le support de la programmation asynchrone et des connexions persistantes comme les WebSockets. WSGI est synchrone et ne peut gérer qu'une requête à la fois par worker, tandis qu'ASGI permet de gérer plusieurs requêtes simultanément dans un seul processus grâce à l'event loop asyncio.
2Comment déclarer une vue asynchrone en Django ?
Comment déclarer une vue asynchrone en Django ?
Réponse
Une vue asynchrone en Django se déclare simplement en utilisant le mot-clé async devant def. Django détecte automatiquement si la vue est asynchrone et l'exécute dans l'event loop approprié. Cette syntaxe native de Python 3.5+ est pleinement supportée depuis Django 3.1.
3Quel est le rôle de sync_to_async dans Django ?
Quel est le rôle de sync_to_async dans Django ?
Réponse
sync_to_async est un adaptateur fourni par asgiref qui permet d'exécuter du code synchrone dans un contexte asynchrone. Il enveloppe une fonction synchrone et l'exécute dans un thread pool séparé, évitant ainsi de bloquer l'event loop. C'est essentiel pour appeler l'ORM Django depuis une vue async car l'ORM est synchrone.
Pourquoi l'ORM Django ne peut-il pas être utilisé directement dans une vue asynchrone ?
Quel est le rôle de async_to_sync dans Django ?
+23 questions d'entretien
Autres sujets d'entretien Django
Les bases de Python
Python orienté objet
Fondamentaux Django
Models Django - Bases
Vues Django
Templates Django
Formulaires Django
QuerySets avancés
Authentification Django
Middleware Django
Admin Django
Django REST Framework
Signaux Django
Upload de fichiers
Cache Django
Sessions Django
Email Django
Tests Django
Sécurité Django
Déploiement Django
ORM Django avancé
Performance Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django dans un écosystème Microservices
Commandes Django personnalisées
Internationalisation Django
Design Patterns Django
Settings & Configuration Production
Observabilité & Monitoring
Maîtrise Django pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement