InfoQ ホームページ eventsourcing に関するすべてのコンテンツ
-
イベントは分散システムの将来を変えるか - Jonas Bonér氏のQCon Londonでの講演より
イベントには注目すべき理由がたくさんある — 自律性を向上し、安定性を高め、迅速な移行を支援し、タイムトラベルを可能にする — QCon London 2018で行われたプレゼンテーションでJonas Bonér氏は、現行のシステムをイベントがどう変えるかを説明する中で、このように述べた。
-
AxonDB - イベントストアの新たな実装
Axon FrameworkのサポートベンダであるAxonIQから先日リリースされたAxonDBは、トランザクションとプッシュベースのインベントパブリッシュをサポートした、イベントソーシング専用の新しいデータストレージだ。一定のパフォーマンスを保証するため、データ読み込みに特化したアーキテクチャを採用している — AxonIQによれば、膨大な数のイベントを格納しても、パフォーマンスは安定しているという。
-
イベントソースシステムにおける過去と未来のイベント
Thomas Pierrain氏がある資産管理会社と新たなプロジェクトを始めた時、重要な要件のひとつとして、現時点で見ると疑問のある判断を下した理由を理解するために、時間を遡ることを可能にする、というものがあった。アムステルダムで先日開催されたDDD Europe 2018でPierrain氏は、時間軸的な課題を持ってイベントソースシステムを構築した自らの経験について論じた。
-
イベントは開発者の第一級ツールであるべきだ
ソフトウェアシステムはイベントをもっと多用すべきだ — Randy Shoup氏は先日のブログ記事で、システムにおいてイベントが第一級市民であるべき理由について明言した。我々はイベントの持つツールとしての価値をしばしば過小評価している、と氏は考える。その一例が、システムの疎結合化に有効であり、各部分を独立して考えることを可能にすることだ。
-
イベントソースのマイクロサービスを設計する
イベントソースのマイクロサービスはまだまだ十分に研究されていない、と Greg Young 氏は先日の Microservies Conference µCon London 2017 で主張したが、彼はすべてのマイクロサービスがイベントソースとすべきであるとは限らない、ということも強調した。代わりに、彼は個別のサービスごとに検討し、実際に適しているサービスにイベントソーシングパターンを適用することを推奨した。
-
イベントアーキテクチャとイベントストリーミング
モノリシック・システムから分散あるいはマイクロサービス・システムに移行すると、たいてい、1つのデータベースにある信頼できる唯一の情報源から、複数のデータベース、すなわち信頼できる複数の情報源へと移行することになる。イベントアーキテクチャを使って、全てのイベントをストリームとして永続化することで、信頼できる唯一の情報源へと戻ることができる。イベントとKafkaの使用に関する一連のブログ記事の中で、Ben Stopford氏はそう主張する。
-
イベントアーキテクチャを選択する
分散システムの設計において、おそらくはマイクロサービスに基づいたイベントアーキテクチャを検討する場合、利用可能なモデルとテクノロジはいくつかある。アーキテクチャの実装方法を選択する時、そのおもな要因は非機能要件である - さまざまなイベントアーキテクチャのスタイルを説明した先日のブログ記事で、David Dawson氏はこのように主張している。
-
QCon New York 2017: Netflixのダウンロード処理におけるイベントソーシングのスケールアップ
NetflixのシニアソフトウェアエンジニアであるPhillipa Avery氏とRobert Reta氏が、QCon New York 2017で、Cassandraをベースとしたイベントソーシングアーキテクチャについて発表した。現在、それはNetflixのダウンロード機能を支えると同時に、同社サービスの柔軟性と信頼性、スケーラビリティ、デバッグ性の向上に一役買う存在になっている。
-
イベントソースシステムにおけるイベントのバージョン管理
イベントソースシステムの課題は、ソフトウェアが数々の変更を経ていても、何年も前にイベントストアに入れられたイベントを現在でも読むことができなければならない、ということだ、と、今年のDDD eXchangeカンファレンスでのプレゼンでGreg Young氏が述べている。システムを停止し、更新して元に戻すことができれば、イベントのバージョニングは比較的簡単だ。本当の課題はシステムが止められない場合だ。
-
マイクロサービスを構築する際はイベントとDDDから始めよう
ドメイン駆動設計(DDD)は、私たちが取り組んでいるドメインに設計を近づける優れた技法だが、構造に焦点を当てすぎて、早期に設計を確定してしまうことが多すぎる。これはDDDの意図するところではない。それよりも、Russ Miles氏が「イベント - ファースト」でマイクロサービスを構築する利点を説明するなかで主張したように、ドメイン内のイベントから(設計を)始めるべきである。
-
モノリシックアプリケーションのマイクロサービスアーキテクチャへの移行
既存のシステムをマイクロサービスに移行するのは、新しいマイクロサービスのシステムを構築するのとは全く異なる。Trifork AmsterdamのアーキテクトであるKuipers氏はプレゼンテーションで、Axonフレームワークを使うCQRSベースの大規模なモノリシックアプリケーションをマイクロサービスベースのアーキテクチャ向けにリファクタ中であると述べている。
-
マイクロサービスとドメイン駆動設計に関するVaughn Vernon氏の意見
モノリスにおいてもきちんとした方法でモデリングすることは可能ではあるが、しばしば大きな泥団子と化してしまう。これは複数のドメインモデルがモノリス内で絡まってしまうのが原因であり、Vaughn Vernon氏の経験ではこれは数週間もしくは数ヶ月以内に起こりうるのである。彼は今年初めのScala Daysにおける発表でこのように述べた。
-
Eric Evans氏: ドメイン駆動設計はソフトウェア開発に有益か?
この数年、ドメイン駆動設計(DDD)への関心が高まっている。Eric Evans氏はロンドンで行われた最近のDDD eXchange Conferenceにおけるキーノートで言及している。彼は開発者がもっと設計に注意を払う時期にいると考えている。理由のひとつは、モデルが高い意味を持つ分散システムを扱う仕事をしているからである。
-
"イベントソースシステム"はアンチパターンである
CQRS(Command Query Responsibility Segregation)は我々が達成しようとしている最終目標ではなく,イベントソーシングの思想に向かう一歩に過ぎない - 今年初め,Domain-Driven Design Europeカンファレンスで行なったプレゼンテーションの中で,Greg Young氏はこのように述べた。その中で氏は,CQRSは単に適用するだけでも価値のあるパターンだ,と指摘している。
-
Lagom - 新しいマイクロサービスフレームワーク
Akkaを開発するLightbendが,同社のReactive Platformを基盤として使用したオープンソースのマイクロサービスフレームワークであるLagomをリリースした。Play FrameworkやAkka製品ファミリに加えて,開発用としてConductRを使用しているのが特徴だ。デフォルトはメッセージ駆動型の非同期方式で,分散型CQRS永続化パターンとイベントソーシングを実装の中心に使用している