В этом курсе мы узнаем, как проектировать микросервисную архитектуру с использованием шаблонов проектирования, принципов и передовых практик, а также с помощью итеративного проектирования архитектуры от монолитной к микросервисной. Мы будем использовать правильные шаблоны и техники проектирования архитектуры. По окончании курса вы научитесь создавать системы для обработки миллионов запросов с высокой доступностью, масштабируемостью, низкой задержкой и устойчивостью к сбоям сети в распределенных микросервисных архитектурах.
Этот курс - это путешествие в области проектирования программного обеспечения, в котором мы будем постепенно развивать архитектуру от монолитной к событийно-ориентированным микросервисам.
Мы начнем с основ проектирования программного обеспечения и создадим монолитную архитектуру электронной коммерции, которая обрабатывает небольшое количество запросов.
После этого мы постепенно будем развивать архитектуру с помощью:
И, наконец, мы изучим архитектуру безсерверных микросервисов и создадим вместе архитектуру, которая может обрабатывать миллионы запросов. Это пошаговый процесс проектирования системы и ее развития от монолитной к микросервисной с использованием шаблонов и принципов.
Мы обсудим архитектуры микросервисов со всеми аспектами:
Разбиение микросервисов
Коммуникация микросервисов (синхронная / асинхронная коммуникация на основе сообщений, API-шлюзы)
Управление данными микросервисов (базы данных / запросы / команды)
Управление транзакциями микросервисов
Распределенное кэширование микросервисов
Развертывание микросервисов с использованием контейнеров и оркестраторов
Устойчивость микросервисов
Мы применяем шаблоны и практики проектирования микросервисов, чтобы рассмотреть их со всеми аспектами.
Мы будем проектировать архитектуру вместе пошагово и перестраивать ее со всеми аспектами опорных столбов микросервисов.
Мы начнем с проектирования монолитной архитектуры. Вы увидите, что у нас есть функциональные и нефункциональные требования, которые должны учитываться в нашем проектировании, а также инструментарий шаблонов и принципов, которые мы изучим и применим в процессе эволюции архитектуры.
Метод обучения
Мы всегда начинаем с проблемы и пытаемся решить ее, изучая и проектируя новые архитектуры, шаблоны и передовые практики.
Проблема -> Изучение -> Проектирование -> Адаптация -> Оценка
Мы завершим этот круг для каждого раздела курса. Вы увидите, что мы добавим новые требования, чтобы обрабатывать миллионы запросов, и изучим новые шаблоны и практики, которые будут использоваться в процессе эволюции архитектуры.
Вы обнаружите, что мы будем добавлять новые требования для обработки миллионов запросов и изучать новые шаблоны и практики, которые используют эти принципы при разработке архитектур.
Мы увидим, как полный набор инструментов для шаблонов и принципов загружается новыми шаблонами и применяется к текущим проектам. Мы увидим последние шаблоны, которые мы используем более чем 30 шаблонов и практик, с реализацией требований высокой масштабируемости, высокой доступности и обработки миллионов запросов.
Позвольте мне перечислить некоторые шаблоны микросервисов, которые мы рассмотрим в этом курсе:
Шаблон Цепочки Темы-Очереди и Балансировки Нагрузки
Анти-шаблон Общей Базы Данных и Многоплатформенное Хранение Данных
Шаблон Шардирования Базы Данных, Теорема CAP
Шаблон Материализованного Представления
Шаблоны CQRS и Событийного Хранилища
Шаблон SAGA — Шаблон Оркестровки/Хореографии SAGA
Шаблон Транзакционного Outbox
Проблема Двойной Записи
Шаблон Захвата Изменений в Базе Данных (CDC) с использованием шаблона Outbox
Шаблоны Хабов Событий и Потокового Распределения Событий в Архитектуре Микросервисов, Основанной на Событиях
Шаблон Cache-Aside для Распределенного Кэширования Микросервисов
Шаблон Sidecar
Шаблон Service Mesh
DevOps и Пайплайны CI/CD для Развертывания Микросервисов
Стратегии Развертывания для Микросервисов: Blue-green, Rolling и Canary deployments
Инфраструктура как Код (IaC) и ее использование
Таким образом, ход курса будет состоять из теоретической и практической информации.
Мы всегда начнем с бизнес-проблемы.
Мы изучим определенный паттерн, для чего и где его следует использовать.
После этого мы увидим референсные архитектуры, которые применяют эти паттерны.
Затем мы спроектируем нашу архитектуру, применяя только что изученный паттерн вместе.
И, наконец, мы определим, какие технологии могут быть выбраны для этих архитектур.
А в последнем разделе мы проведем код-ревью существующего репозитория архитектуры микросервисов на GitHub для практической реализации архитектуры микросервисов.
Таким образом, курс будет включать в себя:
Практические занятия по проектированию
Итеративное проектирование архитектуры от локальной до серверлесс-архитектур в облаке
Эволюция монолитной системы до архитектуры микросервисов, основанных на событиях
Переработка системного дизайна для обработки миллионов запросов
Применение лучших практик с паттернами и принципами дизайна микросервисов
Изучение паттернов микросервисов со всеми аспектами, такими как коммуникация, управление данными, кэширование и развертывание
Подготовка к собеседованию на должность архитектора программного обеспечения
Подготовка к тестированию по системному дизайну.
Я принимал участие в собеседованиях на должность архитектора в нескольких известных компаниях и участвовал в процессе оценки позиций архитекторов программного обеспечения на более чем 50 собеседованиях, собрав требования к архитектурным позициям в индустрии программного обеспечения.
Таким образом, с помощью этого курса вы получите практический опыт всех архитектурных позиций от монолитной до архитектуры микросервисов, основанных на событиях.
Этот курс предназначен для начинающих, но вы должны быть знакомы с основами архитектуры программного обеспечения. В этом курсе будет хорошо теоретическое обучение, но также он составит 90% из практических дизайн-активностей. Все шаги архитектуры курса будут разработаны поэтапно и вместе.
Я надеюсь, что вы присоединитесь ко мне в этом путешествии и разработаете этот проект со мной.
Посмотреть больше
Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум
Ограничение времени просмотра
Вы можете просматривать пробный урок только 10 минут. Получите полный доступ, чтобы смотреть без ограничений.
AWS Serverless Microservices with Patterns & Best Practices
Урок 299.
00:04:38
AWS Lambda as a Microservice
Урок 300.
00:04:26
Mapping Microservice Architecture with AWS Serverless Services for Microservice
Урок 301.
00:06:22
Event-driven Serverless Microservices Design with AWS Lambda
Урок 302.
00:01:03
Thanks
Автор - udemy
udemy
Udemy - одна из самых больших площадок в мире по доставке обучающего контента от разных авторов всего мира. Присутсвуют курсы практически на любую тему.
Блеать такого адского акцента я уже давно не слышал!
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.
Микросервисы - это архитектурный и организационный подход к разработке программного обеспечения, при котором программное обеспечение состоит из небольших независимых сервисов, взаимодействующих через четко определенные API. Эти сервисы принадлежат небольшим автономным командам.
Безопасность программного обеспечения - один из наиболее важных аспектов архитектуры программного обеспечения в наши дни. Практически каждый день вы слышите о новых инцидентах безопасности, которые привели к утечкам данных, прерыванию обслуживания и часто - к ущербу на миллиарды долларов. Фактически - некоторые компании даже закрылись из-за этого. Вы, как архитектор программного обеспечения, несете ответственность за обеспечение максимальной безо
Микросервисы: Проектирование Высокомасштабируемых Систем
Microservices: Designing Highly Scalable Systems
Цель этого курса - вооружить вас всеми знаниями, необходимыми для разработки надежной, хорошо масштабируемой архитектуры микросервисов. Если вы ничего не знаете о микросервисах, этот курс идеально подходит для вас! По завершении этого курса вы узнаете, как управлять данными и распределенными транзакциями в системе на основе микросервисов. Вы также узнаете, как защитить микросервисы и как микросервисы взаимодействуют друг с другом посредство