Встречается на собеседованиях • сегодня

В чем разница между асинхронным и синхронным ендпойтом в FastAPI

FastAPI поддерживает как синхронные, так и асинхронные эндпоинты. Основные различия:

  1. Синхронные:
    • Блокируют выполнение при I/O операциях (запросы к БД, API и т.д.)
    • Проще для понимания, но менее эффективны
    • Используют стандартные блокирующие библиотеки
python
@app.get("/sync")
def sync_endpoint():
    # Блокирующий вызов
    data = db.query("SELECT * FROM table")  
    return data
  1. Асинхронные:
    • Не блокируют выполнение при I/O
    • Требуют async/await синтаксиса
    • Работают с асинхронными библиотеками (asyncpg, aiohttp)
    • Более эффективны при высокой нагрузке
python
@app.get("/async")
async def async_endpoint():
    # Неблокирующий вызов
    data = await async_db.query("SELECT * FROM table")  
    return data

Ключевое: асинхронные эндпоинты позволяют обрабатывать больше запросов одновременно, но требуют асинхронных библиотек и правильного использования await.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы