Короткий ответ WSGI поддерживает только синхронную модель «один запрос — один вызов приложения», а ASGI поддерживает async/await, WebSocket и долгоживущие соединения, что необходимо для приложений на FastAPI, Starlette или Django Channels. Как это работает подробнее WSGI-приложение — синхронная функция, вызываемая один раз на запрос; ASGI-приложение — корутина с интерфейсом scope, receive, send, способная обрабатывать несколько сообщений за «соединение» без блокировки потока. Пример кода Что использовать на практике Рекомендация. ASGI нужен для WebSocket, Server-Sent Events или когда хочется обслуживать много I/O-bound соединений одним процессом. Для обычного CRUD-приложения выигрыш зависит от того, насколько код реально асинхронный. Подводные камни Риск. считать ASGI «быстрее WSGI» по умолчанию без учёта профиля нагрузки; пытаться запустить WSGI-приложение через ASGI-сервер без адаптера.