課程簡介
第一天:Go 事件驱动架构基础
- EDA 简介
- 什么是事件驱动架构?
- 比较单体架构、Microservices 和事件驱动系统
- Go 的并发模型和轻量级 goroutine 如何使其成为 EDA 的理想选择
- 核心概念与优势
- 企业系统中的解耦、可扩展性和弹性
- 定义事件、生产者、消费者和事件代理
- Go 驱动高性能事件系统的实际案例
- CAP 定理与 EDA 中的权衡
- 一致性、可用性和分区容错性概述
- EDA 对这些特性的影响
- 在基于 Go 的系统中平衡一致性和可用性的策略
第二天:Go 中的事件、消息和 Communication 模式
- 理解事件类型
- 领域事件 vs. 集成事件
- Go 应用中的同步与异步事件
- 实践中的消息模式
- Go 中的发布-订阅(Pub/Sub)模式
- 如何使用 JSON、Protocol Buffers 或 Avro 在 Go 中设计和构建事件负载
- 在 Go 中实现事件处理
- 流行的 Go 消息库和框架概述
- 代码示例:使用惯用的 Go 模式分发和处理事件
- 实践环节:在 Go 中构建一个简单的事件驱动服务
第三天:Go 中的消息系统与事件代理
- 选择与集成事件代理
- 流行代理概述:Apache Kafka、RabbitMQ 和 NATS
- 基于 Go 的系统的用例比较与最佳实践
- 设置消息基础设施
- Docker Compose 设置 Kafka、RabbitMQ 或 NATS
- 配置主题、交换器、队列和通道
- Go 客户端库概述
- 实践工作坊
- 构建一个示例 Go 微服务,用于生产和消费事件
- 将服务与选定的事件代理集成
- 调试和测试事件流
第四天:Go EDA 中的部署、监控与高级主题
- 在 Kubernetes 上部署 Go 事件驱动应用
- 为生产环境容器化 Go 应用
- 在 Kubernetes 集群上部署 Kafka(或其他代理)
- KEDA(Kubernetes 事件驱动自动扩展)简介,用于扩展事件消费者
- 错误处理与监控
- 处理事件失败的策略
- 在 Go 服务中实现可观察性
- 高级主题与问答
- 探索使用 Go 的无服务器事件驱动架构
- 事件编排 vs. 编排:用例与设计考虑
- 常见陷阱、经验教训与最佳实践
- 开放式问答环节与互动式故障排除
最低要求
对软件架构的基本理解(单体架构、微服务)
熟悉 Docker 和 Docker Compose
具备 REST API 和网络的基础知识
有使用 CLI 工具和 Git 的经验
可选: 接触过 Kubernetes 和消息系统(Kafka、RabbitMQ、NATS)
客戶評論 (7)
我們會用GO語言編寫一些代碼,並學習有關EDA的內容,例如事件、何時以及如何處理。
Alin
Course - Event Driven Architecture Custom
機器翻譯
這是一個互動式課程,沒有時間睡覺:))。此外,團隊合作並根據每個結果進行辯論也很有趣。
Alina
Course - Event Driven Architecture Custom
機器翻譯
我最喜歡的是討論和提供的範例,這樣我們可以自己得出他想要分享的結論。我喜歡他的節奏、英語表達、耐心,即使我們沒有給出最好的答案,他也不會說那是錯的,而是會提供一些可以改進的範例。
Simona
Course - Event Driven Architecture Custom
機器翻譯
开放式讨论,从理解问题/原因(即“为什么”)到“EDA”。
Constantin
Course - Event Driven Architecture Custom
機器翻譯
基於互動和實例的呈現方式
Virgil
Course - Event Driven Architecture Custom
機器翻譯
課程的互動性質 自我探索的學習方式,讓您自己找到答案 注重實踐,使用真實案例,使概念更易理解
Roxana Sandu
Course - Event Driven Architecture Custom
機器翻譯
非常互動。培訓師非常有知識且耐心。
Robert
Course - Event Driven Architecture Custom
機器翻譯