Мы используем cookie для стабильной работы сервиса. Подробнее

FastAPI и микросервисы

ФорматОнлайн
Длительность10 часов
Объём11 занятий
По окончанииShultais Education
О курсе

Подробнее

Курс «Микросервисы на FastAPI» — это не про то, как написать еще один сайт, а про то, как заложить грамотную архитектуру, которая выдержит рост бизнеса. Мы не будем углубляться в один фреймворк, а рассмотрим всю структуру создания и взаимодействия микросервисов. Каждый раздел курса — это готовый кирпичик вашей будущей системы. Если вы выполните все домашние задания, то к концу обучения у вас будет рабочий прототип микросервисного приложения. Готовый учебный проект уровня Middle, который не стыдно показать на собеседовании. Микросервисы — это входной билет в крупные компании и высокие зарплаты и данный курс помогает преодолеть пропасть между Junior и Middle. 🙋‍♂️ Поддержка В случае вопросов и сложностей наши преподаватели ответят на все вопросы и помогут в течение 24-х часов. ‼️ Практика и домашние задания Обратите внимание, что в этом курсе нет задач, которые можно решать на тренажере. Это проектный курс, в котором мы шаг за шагом создаем несколько микросервисов и развиваем их с первых уроков и до самого конца. Но в этом курсе есть домашние задания, которые вы можете самостоятельно выполнять для закрепления и развития навыков. Для каждого задания есть видео-решение преподавателя для самопроверки и форум поддержки, в случае если у вас возникнут вопросы и сложности. 🚀 Фреймворки, программы и библиотеки Фреймворки, программы и библиотеки, которые мы рассмотрим в курсе:  FastAPI  Pydantic  RabbitMQ  Celery  SQLAlchemy  Redis  Swagger Alembic boto3 / aioboto3 / aiofiles uv httpx aiostmplib uvicorn / gunicorn nginx 4 микросервиса + Frontend часть В ходе курса мы создадим 4 микросервиса и свяжем их друг с другом разными способами: Сервис каталога домов Сервис бронирования Сервис отправки сообщений Сервис JWT-аутентификации Также мы создадим мини-сервис для отдачи фронтенда с помощью nginx. Код всех микросервисов доступен на GitHub.
Требования

Что нужно для старта

  • Уверенное владение Python, включая ООП
  • Основы SQL
  • Основы Git и Github
Результат

Что вы получите

  • Создавать микросервисы на FastAPI
  • Проектировать грамотную слоистую архитектуру
  • Использовать зависимости
  • Правильно выбирать HTTP-методы для эндпоинтов
  • Связывать сервисы между собой
  • Проверять ключи доступа к микросервисам
  • Передавать данные через JWT-токены
  • Формировать Pydantic-схемы
  • Использовать Pydantic Settings для хранения настроек
  • Использовать SQLModel и SQLAlchemy для работы с базой данных
  • Делать миграции с помощью Alembic
  • Управлять кэшированием в Redis
  • Исправлять CORS-ошибки
  • Формировать постраничный вывод объектов
  • Отправлять E-mail на сторонние сервисы
  • Принимать и сохранять файлы на локальный диск и в S3-хранилище
  • Использовать CDN-сервис для отдачи файлов
  • Управлять тяжелыми асинхронными задачами с помощью Celery и RabbitMQ
  • Создавать Docker-образы для микросервисов
  • Поднимать микросервисы с помощью Docker compose
Аудитория

Для кого этот курс

  • Python-разработчики, которые хотят погрузиться в мир современной веб-разработки
  • Django-программисты, которые хотят освоить микросервисы
Содержание

Программа курса

11 занятий
№ТемаЧто внутри
01От монолитов к микросервисам

- Введение
- Знакомство с преподавателем
- Первые интернет-сайты
- Первые динамические сайты
- Современные статические сайты
- Переход к FastCGI
- Развитие интернета в 2000-х
- CDN
- Развитие интернета в 2000-х, часть 2
- Появление WSGI
- AJAX и первые API
- Архитектура монолита
- Появление докера
- Плюсы и минусы монолита
- Разделение монолита
- Микросервисная архитектура
- Сервис данных
- Event Notification Pattern
- Сервис отправки сообщений
- Минимальный набор технологий
- Заключение

02Создание базового проекта

- Введение в курс
- Создание проекта
- Настройка PyCharm
- Формирование структуры проекты
- Эндпоинты для домов
- Настройки роутинга
- Базовая логика в эндпоинтах
- Грамотный возврат 404
- Pydantic схемы
- Погружение в Pydantic схемы
- Простейший фильтр
- Фильтры по цене
- Сортировка данных
- Улучшение фильтров
- Проверка active для дома
- Запуск PostgreSQL в Docker
- Подключение к PostgreSQL из pgAdmin
- Настройки проекта
- Установка psycopg
- Первые зависимости
- Подключение к базе данных
- Создание первой модели
- Получение данных из базы
- Базовые запросы к базе
- Фильтры и сортировка данных

03Домашнее задание 1

- Домашнее задание 1 - 1
- Домашнее задание 1 - 2

04Асинхронность, кэширование, архитектура

- Полностью асинхронный проект
- Слеш в конце эндпоинта
- Подключение и настройка Alembic
- Первая миграция
- Расширение модели и схемы дома
- Конфигурация Redis
- Запуск Redis в Docker Desktop
- Подключение к Redis
- Слоистая архитектура
- Оформление фильтров в виде зависимости
- Рефакторинг зависимостей
- Доступ к кэшу через зависимости
- Создание общего репозитория
- Репозиторий домов
- Сервис кэширования
- Создание сервиса домов

05Домашнее задание 2

- Домашнее задание 2 - 1
- Домашнее задание 2-2

06HTTP методы, Celery, RabbitMQ

- Введение
- Удаление дома
- Добавление домов - заглушка
- Добавление домов - репозиторий и сервис
- Добавление домов - собираем эндпоинт
- Изменение дома - создание заглушки
- Изменение дома - репозиторий и сервис
- Изменение дома - собираем эндпоинт
- Схема нового микросервиса
- Разбор кода сервиса
- Настройка celery
- Создание и постановка задания в очередь
- Обработка задачи из очереди
- Рефакторинг сервиса
- Повторное выполнение заданий
- Асинхронная отправка E-mail
- Подключение mailpit
- Установка и подключение RabbitMQ

07Домашнее задание 3

- Улучшаем схему
- Добавляем валидаторы
- Логика проверки в эндпоинтах
- Новые параметры для E-mail
- Отправка нескольких сообщений
- Улучшаем асинхронность
- Массовая отправка
- Зависимость от aiosmtplib

08Файлы, пагинация и связь сервисов

- Введение в раздел
- Новое поле в базе данных
- Эндпоинт для загрузки файлов
- Загрузка файла на сервер
- Привязка preview к дому
- Возврат media файлов
- Вычисляемые поля
- Асинхронная загрузка файлов
- Загрузка файлов в S3 хранилище
- Несколько слов об S3 и CDN
- Обзор сервиса заказов
- Подключение к сервису домов
- Провека существования дома
- Отправка E-mail через сервис сообщений
- Базовая проверка ключей
- Защита сервиса отправки сообщений
- Отправка сообщений с ключом
- Зависимость от пагинации
- Схема пагинации
- Подсчет количества объектов
- Общее количество страниц
- Финальный код пагинации
- Мощь Generic

09Домашнее задание 4

- Рефакторинг
- Добавляем настройки
- Создание уменьшенной копии
- Сохранение тубочек в S3
- Финальные настройки

10JWT авторизация и Docker

- Сервис JWT авторизации
- Обращение к сервису авторизации
- JWT авторизация в endpoint
- Сборка Docker Compose
- Запуск nginx перед сервисами
- CORS ошибка

11Завершение

- Окончание курса

01От монолитов к микросервисам

- Введение
- Знакомство с преподавателем
- Первые интернет-сайты
- Первые динамические сайты
- Современные статические сайты
- Переход к FastCGI
- Развитие интернета в 2000-х
- CDN
- Развитие интернета в 2000-х, часть 2
- Появление WSGI
- AJAX и первые API
- Архитектура монолита
- Появление докера
- Плюсы и минусы монолита
- Разделение монолита
- Микросервисная архитектура
- Сервис данных
- Event Notification Pattern
- Сервис отправки сообщений
- Минимальный набор технологий
- Заключение

02Создание базового проекта

- Введение в курс
- Создание проекта
- Настройка PyCharm
- Формирование структуры проекты
- Эндпоинты для домов
- Настройки роутинга
- Базовая логика в эндпоинтах
- Грамотный возврат 404
- Pydantic схемы
- Погружение в Pydantic схемы
- Простейший фильтр
- Фильтры по цене
- Сортировка данных
- Улучшение фильтров
- Проверка active для дома
- Запуск PostgreSQL в Docker
- Подключение к PostgreSQL из pgAdmin
- Настройки проекта
- Установка psycopg
- Первые зависимости
- Подключение к базе данных
- Создание первой модели
- Получение данных из базы
- Базовые запросы к базе
- Фильтры и сортировка данных

03Домашнее задание 1

- Домашнее задание 1 - 1
- Домашнее задание 1 - 2

04Асинхронность, кэширование, архитектура

- Полностью асинхронный проект
- Слеш в конце эндпоинта
- Подключение и настройка Alembic
- Первая миграция
- Расширение модели и схемы дома
- Конфигурация Redis
- Запуск Redis в Docker Desktop
- Подключение к Redis
- Слоистая архитектура
- Оформление фильтров в виде зависимости
- Рефакторинг зависимостей
- Доступ к кэшу через зависимости
- Создание общего репозитория
- Репозиторий домов
- Сервис кэширования
- Создание сервиса домов

05Домашнее задание 2

- Домашнее задание 2 - 1
- Домашнее задание 2-2

06HTTP методы, Celery, RabbitMQ

- Введение
- Удаление дома
- Добавление домов - заглушка
- Добавление домов - репозиторий и сервис
- Добавление домов - собираем эндпоинт
- Изменение дома - создание заглушки
- Изменение дома - репозиторий и сервис
- Изменение дома - собираем эндпоинт
- Схема нового микросервиса
- Разбор кода сервиса
- Настройка celery
- Создание и постановка задания в очередь
- Обработка задачи из очереди
- Рефакторинг сервиса
- Повторное выполнение заданий
- Асинхронная отправка E-mail
- Подключение mailpit
- Установка и подключение RabbitMQ

07Домашнее задание 3

- Улучшаем схему
- Добавляем валидаторы
- Логика проверки в эндпоинтах
- Новые параметры для E-mail
- Отправка нескольких сообщений
- Улучшаем асинхронность
- Массовая отправка
- Зависимость от aiosmtplib

08Файлы, пагинация и связь сервисов

- Введение в раздел
- Новое поле в базе данных
- Эндпоинт для загрузки файлов
- Загрузка файла на сервер
- Привязка preview к дому
- Возврат media файлов
- Вычисляемые поля
- Асинхронная загрузка файлов
- Загрузка файлов в S3 хранилище
- Несколько слов об S3 и CDN
- Обзор сервиса заказов
- Подключение к сервису домов
- Провека существования дома
- Отправка E-mail через сервис сообщений
- Базовая проверка ключей
- Защита сервиса отправки сообщений
- Отправка сообщений с ключом
- Зависимость от пагинации
- Схема пагинации
- Подсчет количества объектов
- Общее количество страниц
- Финальный код пагинации
- Мощь Generic

09Домашнее задание 4

- Рефакторинг
- Добавляем настройки
- Создание уменьшенной копии
- Сохранение тубочек в S3
- Финальные настройки

10JWT авторизация и Docker

- Сервис JWT авторизации
- Обращение к сервису авторизации
- JWT авторизация в endpoint
- Сборка Docker Compose
- Запуск nginx перед сервисами
- CORS ошибка

11Завершение

- Окончание курса

Документ после выпуска

Shultais Education

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «FastAPI и микросервисы» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Направления:Backend-разработка

Информация обновлена 3 сентября 2026 г.

Продолжить выбор

Похожие курсы

Backend разработчик Golang
Backend разработчик Golang

Освойте Backend-разработку на Golang с нуля. Научитесь создавать высоконагруженные микросервисы, распределённые системы, работать с Docker, Kubernetes. Язык Google, Uber, Яндекс с…

Онлайн
Персональный наставникОбратная связь
Цена по запросуот 5 000 ₽/мес
NestJS — с нуля, современный backend на TypeScript и Node JS
NestJS — с нуля, современный backend на TypeScript и Node JS

NestJS - это быстро растущий Node.js фреймворк, который позволяет командам легко разрабатывать поддерживаемые, легко тестируемые и масштабируемые приложения благодаря TypeScript и…

Онлайн14 занятий
3 999 ₽
Backend разработчик Node.js
Backend разработчик Node.js

Освойте Backend-разработку на Node.js с нуля. Научитесь создавать REST API, GraphQL, микросервисы, работать с базами данных MongoDB, PostgreSQL. Полное погружение в серверную разр…

Онлайн
Персональный наставникОбратная связь
Цена по запросуот 5 000 ₽/мес
Backend разработчик на Python
Backend разработчик на Python

Освойте Backend-разработку на Python с нуля. Научитесь создавать REST API, Django, FastAPI, работать с PostgreSQL, Redis. Самый популярный язык 2026 года. Зарплаты от 88к до 300к+…

Онлайн
Персональный наставникОбратная связь
Цена по запросуот 5 000 ₽/мес
FastAPI
15 ч.
FastAPI

Использовать Dependency Injection и разделять ответственность

Онлайн
Персональный наставникОбратная связь+3
3 999 ₽
Backend Golang
Backend Golang

Golang – язык для серверной разработки от Google, созданный в 2009 году. Он способен обрабатывать до 10 000 запросов в секунду благодаря встроенным горутинам для параллельной рабо…

Онлайн1 занятий
25 000 ₽
Начать без затрат

Бесплатные курсы

DEV2. Разработка серверной части приложений PostgreSQL 16. Расширенный курс
Бесплатно
DEV2. Разработка серверной части приложений PostgreSQL 16. Расширенный курс

Курс «DEV2. Разработка серверной части приложений PostgreSQL 16. Расширенный курс»: онлайн и очное офлайн обучение в Москве в Бауманском учебном центре «Специалист». Стоимость обу…

Онлайн
Бесплатно
Программирование на Java. Уровень 4. Разработка серверного ПО на Jakarta Enterprise Edition
Бесплатно
Программирование на Java. Уровень 4. Разработка серверного ПО на Jakarta Enterprise Edition

Курс «Программирование на Java. Уровень 4. Разработка серверного ПО на Jakarta Enterprise Edition»: онлайн и очное офлайн обучение в Москве в Бауманском учебном центре «Специалист…

Онлайн
Бесплатно
Программирование на Java. Уровень 3. Разработка клиент - серверных приложений
Бесплатно
Программирование на Java. Уровень 3. Разработка клиент - серверных приложений

Курс «Программирование на Java. Уровень 3. Разработка клиент-серверных приложений»: онлайн и очное офлайн обучение в Москве в Бауманском учебном центре «Специалист». Стоимость обу…

Онлайн
Бесплатно