Свържете се с нас
 Продължителност 28 часa

Съдържание и теми, включени в курса

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

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

Ден 2: Събития, съобщения и комуникационни модели в Go

  • Разбиране на типовете събития
    • Домейн събития срещу интеграционни събития
    • Синхронни срещу асинхронни събития в Go приложения
  • Модели на съобщения в практиката
    • Публикуване-абониране (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 Event-Driven Autoscaling) за мащабиране на консуматорите на събития
  • Обработка на грешки и наблюдение
    • Справяне с неуспехите на събитията със стратегии
    • Внедряване на наблюдаемост в Go услугите
  • Напреднали теми и въпроси и отговори
    • Изследване на безсървърни архитектури, управлявани от събития, с Go
    • Хореография на събития срещу оркестрация: случаи на употреба и съображения при проектирането
    • Често срещани капани, научени уроци и най-добри практики
    • Открита сесия за въпроси и отговори и интерактивно отстраняване на проблеми

Изисквания

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

Аудитория

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

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


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

Отзиви от участници (7)

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

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