
Django Async & ASGI
ASGI vs WSGI, async views, sync_to_async, async_to_sync, hạn chế của ORM đồng bộ, hiệu năng async, database connection pooling
1Sự khác biệt chính giữa WSGI và ASGI là gì?
Sự khác biệt chính giữa WSGI và ASGI là gì?
Câu trả lời
ASGI (Asynchronous Server Gateway Interface) mở rộng WSGI bằng cách bổ sung hỗ trợ cho lập trình bất đồng bộ và các kết nối duy trì như WebSockets. WSGI là đồng bộ và chỉ có thể xử lý một yêu cầu tại một thời điểm cho mỗi worker, trong khi ASGI có thể xử lý nhiều yêu cầu cùng lúc trong một tiến trình duy nhất nhờ event loop của asyncio.
2Làm thế nào để khai báo một async view trong Django?
Làm thế nào để khai báo một async view trong Django?
Câu trả lời
Một async view trong Django được khai báo đơn giản bằng cách dùng từ khóa async trước def. Django tự động phát hiện liệu view có bất đồng bộ hay không và chạy nó trong event loop phù hợp. Cú pháp native của Python 3.5+ này được hỗ trợ đầy đủ kể từ Django 3.1.
3Vai trò của sync_to_async trong Django là gì?
Vai trò của sync_to_async trong Django là gì?
Câu trả lời
sync_to_async là một adapter do asgiref cung cấp, cho phép chạy mã đồng bộ trong ngữ cảnh bất đồng bộ. Nó bọc một hàm đồng bộ và thực thi trong một thread pool riêng, qua đó tránh làm nghẽn event loop. Điều này là thiết yếu để gọi ORM của Django từ một async view vì ORM là đồng bộ.
Tại sao không thể dùng ORM của Django trực tiếp trong một async view?
Vai trò của async_to_sync trong Django là gì?
+23 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Django khác
Kiến thức cơ bản về Python
Python hướng đối tượng
Kiến thức cơ bản về Django
Models Django - Cơ bản
Django Views
Template Django
Django Forms
QuerySets nâng cao
Xác thực Django
Middleware Django
Django Admin
Django REST Framework
Signal trong Django
Tải tệp lên
Caching trong Django
Session Django
Email trong Django
Kiểm thử Django
Bảo mật Django
Triển khai Django
Django ORM nâng cao
Hiệu năng Django
Django & Celery
Django Channels
Django & GraphQL
Django & Docker
Django trong hệ sinh thái Microservices
Lệnh Django tùy chỉnh
Quốc tế hóa trong Django
Design Patterns trong Django
Settings & Cấu hình Production
Observability & Monitoring
Nắm vững Django cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí