План на курса

Ден 1: Основни принципи на събитие-ориентираната архитектура в Go

  • Введение в EDA
    • Какво е събитие-ориентираната архитектура?
    • Сравнение между монолитни, Microservices и събитие-ориентирани системи
    • Как конкурентната модель и лекотеглите гоурутини на Go го правят идеален за EDA
  • Основни концепции и предимства
    • Декоплиране, масштабируемост и устойчивост в корпоративни системи
    • Определяне на събития, продуценти, консументи и брокери на събития
    • Реални пример и изследвания, където Go осигурява високопроизводителни събитие-ориентирани системи
  • Теоремата за CAP и компромиси в EDA
    • Обзор на консистентност, достъпност и толеранс на раздели
    • Влияние на EDA върху тези свойства
    • Стратегии за балансиране на консистентността и достъпността в системите на база Go

Ден 2: Събития, съобщения и Communication шаблони в Go

  • Разбиране на типовете събития
    • Събития в областта vs. Интеграционни събития
    • Синхронни vs. Асинхронни събития в приложенията на Go
  • Практическо приложение на шаблоните за съобщения
    • Publish-Subscribe (Pub/Sub) в Go
    • Как да проектирате и структурирате събитие-ориентирани товарни данни с JSON, Protocol Buffers или Avro в Go
  • Имплементация на обработка на събития в Go
    • Обзор на популярните библиотеки и рамки за съобщения в Go
    • Примери за код: разпращане и обработка на събития с идеоматни Go шаблони
    • Практическа сесия: Създаване на едноставна събитие-ориентирана услуга в Go

Ден 3: Системи за съобщения и брокери на събития с Go

  • Избор и интеграция на брокери на събития
    • Обзор на популярните брокери: Apache Kafka, RabbitMQ и NATS
    • Сравнение на случаи за използване и най-добри практики за системите на база Go
  • Настройване на инфраструктурата за съобщения
    • Настройка на Docker Compose за Kafka, RabbitMQ или NATS
    • Настройване на теми, обменни станции, очереди и канали
    • Обзор на клиентските библиотеки на Go
  • Практическа сесия
    • Създаване на примерен микроуслуга на Go, който произвежда и консумира събития
    • Интеграция на услугата с избрания брокер на събития
    • Диагностика и тестване на потоковете на събития

Ден 4: Развъртане, мониторинг и напреднали теми в Go EDA

  • Развъртане на Go събитие-ориентирани приложения в Kubernetes
    • Контейниране на приложенията на Go за продукция
    • Развъртане на Kafka (или други брокери) в кластери на Kubernetes
    • Введение в KEDA (Kubernetes Автоматично масштабиране на събитие-ориентирани приложения) за масштабиране на потребителите на събития
  • Обработка на грешки и мониторинг
    • Обработка на грешки при събития с стратегии
    • Имплементация на наблюдаемост в услугите на Go
  • Напреднали теми и Въпроси и отговори
    • Изучаване на безсервърни събитие-ориентирани архитектури с Go
    • Събитие-ориентирана хорография vs. Оркестрация: случаи за използване и дизайнерски разсъждения
    • Общи грешки, уроки и най-добри практики
    • Отворен Въпроси и отговори и интерактивна диагностика

 

Изисквания

  • Умеене в Go (Golang), включително използване на goroutines и канали
  • Основно разбиране на модели на архитектура на софтуер, като монолити и микросървиси
  • Знакомство с Docker и Docker Compose
  • Основни познания за REST API и мрежови концепции
  • Опит с командни инструменти и Git
  • Опционално, но полезно: предходен опит с Kubernetes и системи за съобщения, като Kafka, RabbitMQ, или NATS

Целова публика

  • Разработчици на Go, които създават масштабируеми, базирани на събития приложения
  • Софтуерни инженери, преминаващи от монолитни или базирани на REST архитектури към асинхронни системи
  • DevOps и облачни инженери, работещи с контейнерирани или разпределени микросървиси
  • Технически архитекти и дизайнери на системи, изследващи EDA патрони с Go
 28 Часа

Брой участници


Цена за участник

Oтзиви от потребители (7)

Предстоящи Курсове

Свързани Kатегории