この記事は Google Cloud Translation APIを使用した自動翻訳です。
いくつかの文書は原文を読むのに良いかもしれません。
この記事は、イベントソーシングとは何か、インフラストラクチャの開発を簡素化するためにどのように使用できるかを理解したいIT開発者のためのものです。
イベントソーシングは、IT開発会話でますます一般化されている用語です。しかし、それは何ですか?イベントソーシングは、アプリケーションの状態に対するすべての変更を一連のイベントとして記録してアプリケーションを構築する方法です。
これらの一連のイベントは、しばしばイベントログと呼ばれます。イベントログにはいくつかの利点があります。
- アプリケーションの状態に関する完全な変更履歴を提供します。
- ある時点でアプリケーションの現在の状態を再構成するために使用できます。
- アプリケーションの状態に対する変更を再生するために使用できます。これは、デバッグや監査の目的に役立ちます。
イベントソーシングは、開発者に次のような多くの利点を提供します。
- すべての変更が記録され、元の原因を追跡できるため、アプリケーションのデバッグが容易になります。
- すべての変更が記録され、元の原因を追跡できるため、アプリケーションの監査が容易になります。
3.開発者はイベントログを再生して、さまざまなイベントに応じてアプリケーションの状態がどのように変化するかを確認できるため、アプリケーションに新しい機能を追加することができます。
イベントソーシングにはいくつかの欠点があります。
- 既存のアプリケーションでイベントソースを実装するのは難しい場合があります。
- イベントログは時間の経過とともに大きくなる可能性があるため、メンテナンスが難しい場合があります。
- イベントログは線形形式で保存されることが多いため、照会するのが難しい場合があります。
これらの欠点にもかかわらず、イベントソーシングは、特にマイクロサービス分野でアプリケーションを構築するために広く使用されている技術となっています。これは、イベントソーシングが次のようなマイクロサービスアーキテクチャに多くの利点を提供するためです。
- 各マイクロサービスが独自のイベントログを保持できるため、デバッグが改善されました。
- 各マイクロサービスが独自のイベントログを保持できるため、監査が向上します。
- 各マイクロサービスが独自のイベントログを保持できるため、スケーラビリティが向上します。
- 各マイクロサービスが独自のイベントログを保持できるため、モジュール性が向上します。
イベントソーシングの詳細については、以下を含むオンラインで利用可能なさまざまなリソースがあります。
- [イベントソーシング](https://martinfowler.com/eaaDev/EventSourcing.html) - Martin Fowlerのイベントソーシングの包括的なガイドです。
- A Practical Introduction to Event Sourcing - InfoQのイベントソーシングの実用的な紹介。
- [イベントソーシング](https://www.microservices.com/articles/event-sourcing/) - Microservices.comのイベントソーシングのガイドです。