Технологии современных решений на базе Python

Содержание

Слайд 2

Описание Продолжение трека Python. Традиционный курс от партнера ИРИТ-РТФ АО Точка

Описание

Продолжение трека Python. Традиционный курс от партнера ИРИТ-РТФ АО Точка по

изучению технологии современных решений на базе ЯП Python.
Слайд 3

Описание Современные приложения включают в себя не только исходный код, например

Описание

Современные приложения включают в себя не только исходный код, например на

python, но и готовые внешние инструменты, которые дают готовую функциональность. Это могут быть Базы Данных, Очереди сообщений, Кэширование. В рамках курса мы рассмотрим большинство современных используемых технологий, обозначим границы применимости каждой технологии и применим их на практике.
Более того, современные реалии показывают, что приложение должно легко масштабироваться. Ссылка на разработанное веб-приложение на популярном ресурсе одномоментно дает нагрузку в тысячи пользователей в минуту. И приложение должно быть готово к таким нагрузкам. Практики масштабирования и балансировки нагрузки мы тоже затронем.
Слайд 4

Реализуемая технология Традиционная (онлайн) Лекции и практические задания проводятся в традиционном (возможно онлайн) формате.

Реализуемая технология
Традиционная (онлайн)
Лекции и практические задания проводятся в традиционном (возможно

онлайн) формате.
Слайд 5

Структура курса продолжительность курса - 1 семестр аттестация – зачет лимит 30 человек (1 команда)

Структура курса
продолжительность курса - 1 семестр
аттестация – зачет
лимит 30 человек (1

команда)
Слайд 6

Требования для поступления на курс Уверенное знание принципов Python 3, понимание

Требования для поступления на курс
Уверенное знание принципов Python 3, понимание принципов

асинхронной работы в Python 3. Желательно закончить базовый курс Python.
Знание основ работы с системами контроля версий (git).
Слайд 7

Программа курса Что такое микросервис? Service Discovery (DNS, Consul) Инструменты (VCS,

Программа курса
Что такое микросервис?
Service Discovery (DNS, Consul)
Инструменты (VCS, CI/CD)
Веб-фреймворки
Базы данных (PostgresSQL),

типы модели запросов (SQL, NoSQL)
Протоколы взаимодействия (REST, JSONRPC)
Асинхронность
Авторизация
Контейнеризация (Docker)
Тестирование
Кеши (Redis, memcached)
Очереди (RabbitMQ) и их протоколы (AMQP, Stomp)
High Availability (масштабирование, балансировка, отказоустойчивость)
Хранение секретов
Слайд 8

Результат курса Пример готового проекта по окончанию курса - Веб-сервис “Аукционная

Результат курса
Пример готового проекта по окончанию курса - Веб-сервис “Аукционная Площадка”

в составе сборки из приложений:
Backend на Python с асинхронной обработкой JSONRPC запросов
Frontend для общения с Backend по API
Панель администратора, работающая по протоколу REST
База данных PostgreSQL
Интеграция с Redis в качестве сессионного хранилища
Асинхронная общение с брокером сообщений RabbitMQ (если используется)
Обработка сообщений из внешних источников
Требования к построению архитектуры приложения:
Весь исходный код хранится в репозитории на Github/Gitlab/Pornhub
Код покрыт тестами
Приложения завернуты в Docker, сборка приложений запускается в docker-compose
Прогон тестов и сборка новой версии приложения осуществляется через CI/CD
Секреты хранятся отдельно от кода