
Django Async та ASGI
ASGI проти WSGI, async views, sync_to_async, async_to_sync, обмеження синхронного ORM, продуктивність async, database connection pooling
1Яка основна різниця між WSGI та ASGI?
Яка основна різниця між WSGI та ASGI?
Відповідь
ASGI (Asynchronous Server Gateway Interface) розширює WSGI, додаючи підтримку асинхронного програмування та постійних з'єднань, таких як WebSockets. WSGI є синхронним і може обробляти лише один запит за раз на кожен worker, тоді як ASGI може обробляти кілька запитів одночасно в одному процесі завдяки event loop asyncio.
2Як оголосити async view у Django?
Як оголосити async view у Django?
Відповідь
Async view у Django оголошується просто за допомогою ключового слова async перед def. Django автоматично визначає, чи є view асинхронним, і виконує його у відповідному event loop. Цей нативний синтаксис Python 3.5+ повністю підтримується починаючи з Django 3.1.
3Яка роль sync_to_async у Django?
Яка роль sync_to_async у Django?
Відповідь
sync_to_async — це адаптер, наданий asgiref, який дозволяє виконувати синхронний код в асинхронному контексті. Він обгортає синхронну функцію та виконує її в окремому thread pool, запобігаючи блокуванню event loop. Це необхідно для виклику ORM Django з async view, оскільки ORM є синхронним.
Чому ORM Django не можна використовувати безпосередньо в async view?
Яка роль async_to_sync у Django?
+23 питань зі співбесід
Інші теми співбесід Django
Основи Python
Об'єктно-орієнтований Python
Основи Django
Models Django - Основи
Django Views
Шаблони Django
Форми Django
Розширені QuerySets
Автентифікація Django
Django Middleware
Django Admin
Django REST Framework
Сигнали Django
Завантаження файлів
Кешування в Django
Сесії Django
Email у Django
Тестування Django
Безпека Django
Розгортання Django
Просунутий Django ORM
Продуктивність Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django в екосистемі мікросервісів
Користувацькі команди Django
Інтернаціоналізація Django
Патерни проєктування Django
Settings та конфігурація для production
Спостережуваність і моніторинг
Опануй Django для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно