CQRS (Command-Query Responsibility Segregation) アーキテクチャ パターンを使用して、StackOverflow のようなサイトを構築できますか? 私は CQRS と DDD (ドメイン駆動設計) に比較的慣れていないので、パターンを調査し、パターンに慣れているサイトをモデル化しようとしています。CQRS が StackOverflow のようなサイトの多くの側面で役立つことはわかりますが、可能かどうかわからない領域がいくつかあります (少なくとも、すぐにはわかりません)。具体的には:
- 質問する 質問 を作成すると、すぐに表示され、編集できます。CQRS で「AskQuestion」などのコマンドを発行すると、「QuestionAsked」というイベントが作成されます。最終的に、質問は非正規化データ ストアにプッシュされます。しかし、SO の経験はすぐにわかります。これはCQRSで可能ですか?
- 投票 私の投票はすぐに反映されます。CQRS では、これらのコマンド/イベントが最終的にイベント バスを介して読み取りストアに移動することを想像します。しかし、SOはすぐに情報を提供してくれます。
私の懸念は、SO が提供する即時フィードバックの概念に関するものです。CQRS はこれを提供できますか? もしそうなら、これはどのように行われますか?これを処理する方法を示す良い例はありますか?
それが役立つ場合、私の環境は VS2010/C#/SQL2008R2 ですが、SQLite などの他のオプションも受け入れています。また、NCQRS と LOKAD のフレームワーク、および Mark Nijhof のサンプルも検討しており、Greg Young のサンプルをダウンロードする予定です。 . CQRS サンプルについては、他にあまり見つかりませんでした。
ありがとう!