Обычно, когда люди говорят о «асинхронном» или «решениях КОЛБЫ асинхр», они относятся к ситуациям, когда Колба обезьяна исправленная с некоторым асинхронным-инструментом (GEvent, asyncio и т.д.)Создания синхронной Колбы Асинхронной - Колба Инстансы
Учитывая, что колба достаточно мал, чтобы быть «созданы на лету», я думал, что эта модель может работать:
Входящие запросы HTTP -> HTTP сервер (., например, Nginx/апач) -> HTTP- request-queue -> экземпляр фляжки (для обработки каждого запроса)
Без изменения какого-либо кода, выполняющего какие-либо обезьяньи патчи, вы, по сути, получаете свой код блокировки, который будет обрабатываться изолированно. После некоторого копания, я считаю, что это может быть сделано:
http://flask.pocoo.org/docs/0.11/deploying/wsgi-standalone/#twisted-web][1]
Моими вопросы:
использует этот подход менее эффективный, чем писать управляемые события кода? (например, с использованием GEvent или Tornado)
Какова модель того, как [1] обрабатывает запросы? (это то же, что я описал выше)
Может ли состояние гонки существовать? Например.
Создание 2 звонков в базу данных, где последний запрос HTTP (запрос-2) обрабатывается первой (из-за асинхронной обработки запросов), в результате чего конфликт для первого запроса HTTP (запрос-1)