[Andrey Sobolev] [Udemy] Микросервисы на Python (asyncio, starlette) + RabbitMQ (2021)
Создание микросервисов на asyncio python. Подключение к брокеру RabbitMQ. Валидация данных при помощи Pydantic.
Описание
В рамках данного курса Вы научитесь создавать асинхронные микросервисы на языке Python (asyncio, Starlette), а также связывать их друг с другом при помощи брокера RabbitMQ . Будет рассмотрен веб-интерфейс RabbitMQ и разобрана его схема работы. Также вы научитесь тестировать микросервисы (pytest) и валидировать входные данные при помощи Pydantic.
Программа курса построена вокруг решения реальной задачи по созданию чата между пользователем и микросервисом, в котором микросервис переворачивает сообщение пользователя.
- На первом занятии мы начнем создавать микросервис main (работающим на фреймворке Starlette) и попробуем написать первые сообщения, а также протестируем работу aiocron.
- На втором занятии будет подробно рассказано про работу RabbitMQ, а также мы создадим микросервис messager, и попробуем отправить туда несколько сообщений из веб-интерфейса RabbitMQ.
- На третьем занятии мы свяжем микросервисы main и messager при помощи брокера RabbitMQ, а также научимся отправлять данные в формате json от одного микросервиса к другому.
- На четвертом занятии мы создадим микросервис worker, который будет эмулировать решение долгих задач (при помощи алгоритма PoW). Мы свяжем его с микросервисом messager (который в свою очередь полученный результат будет отправлять в микросервис main)
- На пятом занятии мы рассмотрим паттерн RPC (Remote Procedure Call), который позволяет нам вызывать функции из других микросервисов (к примеру нам нужно посчитать hash, или вызвать функцию суммирования в микросервисе А, из микросервиса Б)
- На шестом занятии мы научимся валидировать входные данные при помощи Pydantic, отделять бизнес-логику от логики обслуживания RabbitMQ, а также тестировать наши микросервисы при помощи Pytest.
Для кого этот курс:
- Разработчики python, которые хотят научится создавать асинхронные микросервисы на языке python, связанные при помощи брокера RabbitMQ.
Подробнее:
Скачать: