課程簡介
第一天:Go 事件驅動架構基礎
- EDA 簡介
- 什麼是事件驅動架構?
- 單體架構、Microservices 和事件驅動系統的比較
- Go 的併發模型和輕量級 goroutines 如何使其成爲 EDA 的理想選擇
- 核心概念與優勢
- 企業系統中的解耦、可擴展性和彈性
- 定義事件、生產者、消費者和事件代理
- Go 驅動的高性能事件系統的實際案例
- EDA 中的 CAP 定理與權衡
- 一致性、可用性和分區容錯性概述
- EDA 對這些屬性的影響 在基於 Go 的系統中平衡一致性和可用性的策略
第二天:Go 中的事件、消息和 Communication 模式
- 理解事件類型
- 領域事件與集成事件
- 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),包括使用goroutines和channels
- 對軟件架構模型(如單體架構和微服務)有基本理解
- 熟悉Docker和Docker Compose
- 對REST API和網絡概念有基本瞭解
- 有命令行工具和Git的使用經驗
- 可選但有幫助:有Kubernetes和消息系統(如Kafka、RabbitMQ或NATS)的經驗
受衆
- 構建可擴展事件驅動應用的Go開發者
- 從單體或REST架構過渡到異步系統的軟件工程師
- 使用容器化或分佈式微服務的DevOps和雲工程師
- 探索使用Go實現EDA模式的技術架構師和系統設計師
客戶評論 (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
機器翻譯