Программирование [Глеб Учитель] [Stepik] Проектирование архитектуры и интеграций (API / брокеры) сервисов (2023)

  • Автор темы Trinity
  • Дата начала
[Глеб Учитель] [Stepik] Проектирование архитектуры и интеграций (API / брокеры) сервисов (2023)

ALQhsTh.png


Проектирование архитектуры и интеграций (API / брокеры) сервисов [Stepik, Глеб Учитель]

Чему вы научитесь:

  • Выявление функциональных и нефункциональных требований
  • Выбор лучшего архитектурного решения для вашего веб-сервиса
  • Проектирование распределенных систем с учетом CAP-теоремы, ACID и BASE
  • Основы работы с реляционными и NoSQL базами данных
  • Применение различных архитектурных паттернов и стилей
  • Проектирование интеграции по API и с брокерами сообщений, моделирование в UML
  • Использование популярных технологий в интеграциях - синхронных и асинхронных
  • Выбор оптимального решения под конкретную задачу интеграции
  • Тестирование и исследование API в инструментах cURL, Postman, SOAP UI, Chrome DevTools
  • Обеспечение безопасности и производительности вашей интеграции
  • Документирование с помощью Swagger и других инструментов
  • Разработка своего API на Python
Вы легко и просто усвоите широкий материал со всеми понятиями проектирования интеграций с помощью API и брокеров сообщений, о которых необходимо знать:
  • Модель TCP/IP и протоколы - HTTP, TCP, UDP, TLS, HTTPS
  • Разница между веб-сервисом, веб-сайтом, API и SDK
  • Инструменты тестирования и исследования API - cURL, Postman, SOAP UI, Chrome DevTools
  • Создание данных в различных форматах - JSON, XML, YAML
  • Проектирование API в популярных синхронных технологиях - JSON-RPC, SOAP, GraphQL, gRPC, REST. И в асинхронных инструментах - HTTP Async (Callback, Polling, Long Polling), Webhooks, WebSockets, Server Sent Events.
    Их различия, преимущества и варианты использования
  • Документирование API в OpenRPC, схемах XSD+WSDL / SDL / Proto, OpenApi Swagger, AsyncAPI Spec
  • Api First и Code First подходы
  • Концепции API веб-сервисов - клиент-серверная модель и масштабируемость веб-сервисов
  • Работа со списками данных в API: сортировка, фильтрация, пагинация
  • Согласование содержимого и MIME-типы
  • Основы конфиденциальности: хеширование, ключи шифрования, электронная подпись
  • Разница между аутентификацией, идентификацией и авторизацией. А также технологии: Api-Key, токены доступа, mTLS, JWT, oAuth2 + OpenID Connect
  • Безопасность: защита вашего API от злоумышленников
  • Семантическое версионирование
  • Производительность API: управление кешированием, batch-запросы, chunked-запросы, rate limiting, retry, timeout
  • Проектирование интеграции с нуля - сбор требований и моделирование в UML
  • Интеграции через брокеры сообщений: понятия, преимущества и области применения
  • Внутреннее устройство брокеров сообщений: RabbitMQ, Apache Kafka
  • Работа с паттернами асинхронного обмена сообщениями: Request-Reply, Publish-Subscribe, Point-to-Point
  • Проектирование надежных, безопасных и эффективных интеграций с использованием брокеров сообщений
  • Гарантии доставки и очерёдность доставки
  • Другие стили интеграции (файлы, общая БД)
  • Реализация своего API с помощью кода на Python
Вы легко и просто усвоите широкий материал со всеми понятиями о проектировании архитектуры веб-сервисов, о которых необходимо знать:
  • Введение в архитектуру веб-приложений
  • Распределённые системы в контексте веб-сервисов - что это?
  • Архитектурные стили (монолит, микросервисы, SOA и т.д.)
  • Типы межсервисных взаимодействий (интеграций)
  • Архитектурные паттерны: API Gateway, Backend for Frontend, Servise Mesh и др.
  • Параллелизм, согласованность (строгая и в конечном счёте)
  • Теоремы CAP / BASE / ACID и их влияние на архитектуру
  • Использование блокировок (оптимистичных и пессимистичных) и транзакций
  • Выбор подходящей базы данных - реляционные SQL / NoSQL
  • Шардирование и партиционирование баз данных
  • Low coupling и High cohesion, проблема N+1
  • Техники масштабирования (горизонтальное / вертикальное)
  • Инфраструктура веб-приложения (безопасность, мониторинг, развёртывание в сетевой среде)
  • Оценка стоимости архитектурного решения
  • Документирование архитектуры в C4 и других нотациях
  • Документирование всего веб-сервиса
Подробнее:
Скачать:
 

Похожие темы

Trinity
Ответы
0
Просмотры
523
Trinity
Trinity
Ответы
0
Просмотры
404
Trinity
Trinity
Ответы
0
Просмотры
253
Trinity
Trinity
Ответы
0
Просмотры
501
Udemy.com
Trinity
Trinity