Продвинутый FastAPI для продолжающих

- Уроков: 41
- Сложность: normal
- Аудитория: Курс будет полезен для продолжающих свое изучение создания API используя FastAPI.
Курс "Продвинутый FastAPI для продолжающих" предназначен для разработчиков, которые уже знакомы с основами FastAPI и хотят углубить свои знания, освоить передовые практики и научиться строить высокопроизводительные, масштабируемые и хорошо структурированные API.
Данный курс является продолжением курса «FastAPI для начинающих», который получил Приз зрительских симпатий 2024!
Мы начнем с продвинутых возможностей FastAPI, таких как вложенные маршрутизаторы (APIRouter
), различные подходы к версионированию API (через заголовки Accept, Path или Header), создание собственных классов APIRoute
для расширенной функциональности и использование Lifespan Events
для управления жизненным циклом приложения. Вы также узнаете о глобальной конфигурации FastAPI и работе с классами Response
для тонкой настройки ответов.
Далее мы глубоко погрузимся в продвинутую обработку данных с Pydantic. Вы изучите продвинутые типы Pydantic, работу с вложенными моделями и циклическими зависимостями, расширенную валидацию и модификацию данных, использование Pydantic Generics для создания гибких моделей, а также тонкости сериализации и десериализации. Мы также рассмотрим, как настраивать поведение Pydantic через ConfigDict
.
В разделе "Работа с файлами в FastAPI" вы научитесь эффективно загружать и скачивать файлы, а также выполнять их валидацию. Особое внимание будет уделено потоковой передаче данных (Streaming) для обработки больших файлов.
Одним из ключевых разделов курса является "Архитектуры в FastAPI". Мы начнем с простых монолитных структур и постепенно перейдем к более сложным и мощным архитектурным паттернам, таким как Модульная структура, Многоуровневая архитектура (Layered Architecture), Луковая архитектура (Onion Architecture) и Чистая архитектура (Clean Architecture). Это поможет вам строить легко поддерживаемые и расширяемые приложения.
Курс также охватывает тему "Микросервисы с FastAPI". Вы узнаете, как строить несколько FastAPI-сервисов, организовывать взаимодействие между ними по HTTP, а также с использованием брокера сообщений RabbitMQ. Отдельное внимание будет уделено концепции API Gateway.
Мы не обойдем стороной и производительность и оптимизацию вашего приложения. Вы изучите методы кеширования, внедрение Rate Limiting для защиты от перегрузок, настройку мониторинга и логирования с помощью Prometheus и Grafana, а также трассировку запросов с OpenTelemetry для глубокого анализа работы вашего API.
Завершающий, но не менее важный блок посвящен тестированию приложения. Вы освоите TestClient
, научитесь писать эффективные тесты с pytest
для синхронного и асинхронного кода, а также тестировать защищенные эндпоинты и обеспечивать изоляцию тестов для надежных результатов.
Для прохождения курса необходимы знания Python, ООП, SQL и иметь базовые знания FastAPI.
Желательно прохождение курса - FastAPI для начинающих