コース概要
Day 1: Goにおけるイベント駆動型アーキテクチャの基礎
- EDAの入門
- イベント駆動型アーキテクチャとは何か?
- モノリス、マイクロサービス、イベント駆動型システムの比較
- Goの並行処理モデルと軽量なgoroutinesがEDAに最適な理由
- コアコンセプトとメリット
- エンタープライズシステムにおける疎結合、スケーラビリティ、レジリエンス
- イベント、プロデューサー、コンシューマー、イベントブローカーの定義
- Goが高性能なイベントシステムを支える実世界の例とケーススタディ
- CAP定理とEDAにおけるトレードオフ
- 一貫性、可用性、パーティション耐性の概要
- これらのプロパティに対するEDAの影響
- Goベースのシステムにおける一貫性と可用性のバランスを取る戦略
Day 2: Goにおけるイベント、メッセージ、通信パターン
- イベントタイプの理解
- ドメインイベントと統合イベント
- Goアプリケーションにおける同期イベントと非同期イベント
- 実践的なメッセージングパターン
- GoでのPublish-Subscribe (Pub/Sub)
- JSON、Protocol Buffers、Avroを使用してイベントペイロードを設計・構成する方法
- Goでのイベントハンドリングの実装
- メッセージング向けの人気あるGoライブラリとフレームワークの概要
- コード例: アイディオーミックなGoパターンを使用したイベントのディスパッチと処理
- ハンズオンセッション: Goによるシンプルなイベント駆動型サービスの構築
Day 3: Goを使用したメッセージングシステムとイベントブローカー
- イベントブローカーの選定と統合
- 人気のあるブローカーの概要: Apache Kafka、RabbitMQ、NATS
- Goベースのシステムにおけるユースケースとベストプラクティスの比較
- メッセージングインフラストラクチャのセットアップ
- Kafka、RabbitMQ、NATS用のDocker Composeセットアップ
- トピック、エクスチェンジ、キュー、チャネルの構成
- Goクライアントライブラリの概要
- ハンズオンワークショップ
- イベントを生成・消費するサンプルGoマイクロサービスの構築
- 選択したイベントブローカーとのサービスの統合
- イベントフローのデバッグとテスト
Day 4: Go EDAにおけるデプロイ、監視、高度なトピック
- KubernetesでのGoイベント駆動型アプリケーションのデプロイ
- プロダクション環境向けのGoアプリケーションのコンテナ化
- Kubernetesクラスター上のKafka(または他のブローカー)のデプロイ
- イベントコンシューマーのスケーリングのためのKEDA(Kubernetes Event-Driven Autoscaling)の紹介
- エラーハンドリングと監視
- 戦略を用いたイベント失敗の処理
- Goサービスにおけるオブザーバビリティの実装
- 高度なトピックとQ&A
- Goによるサーバーレスイベント駆動型アーキテクチャの探求
- イベントコレオグラフィーとオーケストレーション: ユースケースと設計上の考慮事項
- 共通の落とし穴、習得した教訓、ベストプラクティス
- オープンQ&Aセッションとインタラクティブなトラブルシューティング
要求
- Go(Golang)の習熟、特にgoroutinesとchannelsの使用を含む
- モノリスやマイクロサービスなどのソフトウェアアーキテクチャモデルの基礎的な理解
- 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
機械翻訳