
Django Async e ASGI
ASGI vs WSGI, async views, sync_to_async, async_to_sync, limitações do ORM sync, performance async, database connection pooling
1Qual é a principal diferença entre WSGI e ASGI?
Qual é a principal diferença entre WSGI e ASGI?
Resposta
ASGI (Asynchronous Server Gateway Interface) estende o WSGI adicionando suporte para programação assíncrona e conexões persistentes como WebSockets. O WSGI é síncrono e só consegue lidar com uma requisição por vez por worker, enquanto o ASGI consegue gerenciar várias requisições simultaneamente em um único processo por meio do event loop do asyncio.
2Como declarar uma view assíncrona no Django?
Como declarar uma view assíncrona no Django?
Resposta
Uma view assíncrona no Django é declarada simplesmente usando a palavra-chave async antes de def. O Django detecta automaticamente se a view é assíncrona e a executa no event loop apropriado. Essa sintaxe nativa do Python 3.5+ é totalmente suportada desde o Django 3.1.
3Qual é o papel de sync_to_async no Django?
Qual é o papel de sync_to_async no Django?
Resposta
sync_to_async é um adaptador fornecido pelo asgiref que permite executar código síncrono dentro de um contexto assíncrono. Ele encapsula uma função síncrona e a executa em um thread pool separado, evitando assim o bloqueio do event loop. Isso é essencial para chamar o ORM do Django a partir de uma view async, já que o ORM é síncrono.
Por que o ORM do Django não pode ser usado diretamente em uma view assíncrona?
Qual é o papel de async_to_sync no Django?
+23 perguntas de entrevista
Outros temas de entrevista Django
Fundamentos de Python
Python orientado a objetos
Fundamentos do Django
Models Django - Fundamentos
Views do Django
Templates Django
Formulários Django
QuerySets avançados
Autenticação no Django
Middleware do Django
Django Admin
Django REST Framework
Sinais do Django
Upload de arquivos
Cache do Django
Sessões do Django
Email no Django
Testes no Django
Segurança do Django
Implantação do Django
Django ORM avançado
Desempenho do Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django em um ecossistema de microsserviços
Comandos personalizados do Django
Internacionalização no Django
Padrões de Projeto no Django
Settings e configuração de produção
Observabilidade e monitoramento
Domine Django para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis