Введение
Этот практикум проведет вас по процессу использования async и await в Flask, популярном веб-фреймворке на Python. Вы научитесь определять асинхронные представления и обработчики, понять последствия использования асинхронного кода для производительности и изучить задания в фоновом режиме в Flask.
Примечание: вам нужно создать файл кода самостоятельно и запустить его в среде. Вы можете просмотреть статус сервиса Flask на Web 5000.
Определение асинхронного представления
В Flask вы можете определить представления в виде асинхронных функций с использованием синтаксиса async def. Это позволяет использовать await для выполнения асинхронных операций внутри функции представления.
@app.route("/get-data")
async def get_data():
data = await async_db_query(...)
return jsonify(data)
Для запуска этого кода сохраните его в файл Python (например, app.py) и выполните файл с использованием сервера разработки Flask:
flask run
Резюме
В этом практикуме вы узнали, как использовать async и await в Flask для определения асинхронных представлений и обработчиков. Также вы изучили последствия использования асинхронного кода для производительности, задания в фоновом режиме и возможность использования Quart в качестве альтернативы Flask для кодовых баз с интенсивным использованием асинхронности. Кроме того, вы узнали о совместимости расширений Flask с асинхронными представлениями и возможности использования других циклов событий в Flask.