2017-07-06 11 views
0

非常に高速な応答時間と高可用性を必要とするプロジェクトを開始しようとしています。私はこれまでかなりの自信を持っています。サービスファブリック単一のDBパーシスタンスサービスを使用したステートフルサービス

私は現在、主なデータソースとしてステートフルなコンテンツサービスに基づいて、特定のデザインに傾いています。単一のデータ永続性サービスがある種のデータベースに保存されています。

読み取り操作はweb-apiによって行われます 書き込み操作は、RebusとAzureサービスバス通信によってハンドラとして実行されます。

  • コンテンツサービスは、コンテンツサービスは、上のコミットステートフルなサービスであるJSONとしてシリアライズさ、信頼性の高い辞書に保存されたオブジェクトと永続性サービスにメッセージを送信します。

  • コンテンツサービスは、データを復元する必要がある場合、jsonの直列化解除を担当します。

  • 何らかの理由で辞書全体が失われたり、バスにリセットメッセージが入力されたりする場合があります。

    持続性サービスは、データストア(まだ決定し、多分テーブル記憶)に、バスからのメッセージをRecievesと含まエンティティを格納します。

  • サービスがデータをリロードする必要があるときに、データのリポジトリ全体を処理します。私は、これはまた、ユーザデータの高い量を持つシステムを、設計の実現可能な方法であるかどうかについては本当にわからないんだだけ
  • データを格納および取得に対する懸念自体、無整合性チェック

このデザインに関するあなたの考えは?

+1

ご質問はありますか? – Dismissile

+0

お試しください! – Mardoxx

+0

あなたの誰かが似たようなことを試してみたり、このデザインについて心配していたのであれば、本当に疑問でした。私の主な関心事は、本当に信頼性の高い辞書のデータを検証する方法がないということです。 –

答えて

0

私はこのソリューションを追求しましたが、それは非常にうまく動作していますが、すべてが期待どおりに動作することを確認するためには広範なテストが必要です。

関連する問題