2.1 Что такое FastAPI?
6 из 6 шагов пройдено
4 из 4 баллов  получено

Starlette

Starlette - это легковесный ASGI фреймворк/набор инструментов, который идеален для построения высокопроизводительных асинхронных сервисов.

Starlette очень простой и интуитивный. Он разработан таким образом, чтобы быть легко расширяемым и иметь модульные компоненты.

В нём есть:

  • Впечатляющая производительность.
  • Поддержка веб-сокетов.
  • Фоновые задачи.
  • Обработка событий при старте и финише приложения.
  • Тестовый клиент на основе HTTPX.
  • Поддержка CORS, сжатие GZip, статические файлы, потоковая передача данных.
  • Поддержка сессий и куки.
  • 100% покрытие тестами.
  • 100% аннотированный код.
  • Несколько жёстких зависимостей.

В настоящее время Starlette показывает самую высокую скорость среди Python-фреймворков в тестовых замерах. Быстрее только Uvicorn, который является сервером, а не фреймворком.

Starlette обеспечивает весь функционал микрофреймворка, но не предоставляет автоматическую валидацию данных, сериализацию и документацию.

FastAPI добавляет эти функции используя подсказки типов Python и Pydantic. Ещё FastAPI добавляет систему внедрения зависимостей, утилиты безопасности, генерацию схемы OpenAPI и т.д.

 

Uvicorn

Uvicorn - это молниеносный ASGI-сервер, построенный на uvloop и httptools.

Uvicorn является сервером, а не фреймворком. Например, он не предоставляет инструментов для маршрутизации запросов по ресурсам. Для этого нужна надстройка, такая как Starlette или FastAPI.

 

Pydantic

Pydantic - это библиотека для валидации данных, сериализации и документирования (используя JSON Schema), основываясь на подсказках типов Python, что делает его чрезвычайно интуитивным.


Будьте вежливы и соблюдайте наши принципы сообщества. Пожалуйста, не оставляйте решения и подсказки в комментариях, для этого есть отдельный форум.
Нет обсуждений. Начните первое.