感谢您发送咨询!我们的团队成员将很快与您联系。
感谢您发送预订!我们的团队成员将很快与您联系。
课程时长 28 小时
课程大纲
第一天:Go中事件驱动架构基础
- EDA简介
- 什么是事件驱动架构?
- 比较单体、微服务和事件驱动系统
- Go的并发模型和轻量级goroutine为何使其成为EDA的理想选择
- 核心概念与优势
- 企业系统中的解耦、可扩展性和弹性
- 定义事件、生产者、消费者和事件代理
- Go驱动高性能事件系统的真实案例
- CAP定理与EDA中的权衡
- 一致性、可用性和分区容错性概述
- EDA对这些属性的影响
- 在基于Go的系统中平衡一致性和可用性的策略
第二天:Go中的事件、消息和通信模式
- 理解事件类型
- 领域事件与集成事件
- 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的无服务器事件驱动架构
- 事件编排与编排:用例和设计考虑
- 常见陷阱、经验教训和最佳实践
- 开放问答环节和互动故障排除
要求
- 熟练掌握Go(Golang),包括使用goroutine和channel
- 了解单体架构和微服务等软件架构模型的基本概念
- 熟悉Docker和Docker Compose
- 了解REST API和网络基础知识
- 有命令行工具和Git的使用经验
- 可选但有益:接触过Kubernetes及Kafka、RabbitMQ或NATS等消息系统
目标受众
- 构建可扩展事件驱动应用的Go开发者
- 从单体或基于REST的架构转向异步系统的软件工程师
- 负责容器化或分布式微服务的DevOps和云工程师
- 探索使用Go实现EDA模式的技术架构师和系统设计师
客户评论 (7)
我们用GO编写一些代码,并学习一些关于EDA的内容,比如事件、时机和方法。
Alin
课程 - Event Driven Architecture Custom
机器翻译
这是一门互动性很强的课程,根本没有时间睡觉 :))。此外,团队合作非常愉快,之后还能根据每个结果进行辩论。
Alina
课程 - Event Driven Architecture Custom
机器翻译
我最喜欢的是讨论和提供的例子,这样我们可以自己得出他想要分享的结论。我喜欢他的节奏、英语表达、耐心,即使我们没有给出最佳答案,他也不会说那是错的,而是会举例说明如何改进。
Simona
课程 - Event Driven Architecture Custom
机器翻译
开放讨论,从理解问题/原因(`为什么`)到`EDA`的过渡。
Constantin
课程 - Event Driven Architecture Custom
机器翻译
该方法主要通过互动和示例来呈现内容
Virgil
课程 - Event Driven Architecture Custom
机器翻译
课程的互动性 采用自我发现的学习方式,让您自己找到答案 以实际案例为重点,使概念更易于理解
Roxana Sandu
课程 - Event Driven Architecture Custom
机器翻译
互动性非常强。培训师知识渊博且耐心。
Robert
课程 - Event Driven Architecture Custom
机器翻译