問題タブ [service-fabric-stateful]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - Service Fabric 内の 2 つ以上のステートフル サービスでキューを共有する
2 つ以上のステートフル サービス間でキューを共有することは可能ですか?それとも、メッセージを独自の内部キューに入れるために tcp/http 経由でキューを直接呼び出す必要がありますか?
例えば; 条件に基づいてキューに注文を入れる最初のサービスがあるとします。
次に、2 番目のサービスがそのキューから読み取り、処理を続行します。
これに関するドキュメント内ではあまり見ることができません。GetOrAddAsync
メソッドが uri を受け取ることができることはわかりますが、これがどのように機能するか、またはクロスサービスを実行できるかどうかの例を見たことはありませんか?
この背後にある考え方は、処理を別々のキューに分割して、メッセージを再試行するときに矛盾した状態にならないようにすることです。
masstransit - MassTransit と Service Fabric ステートフル サービス?
MassTransit と RabbitMQ を使用して、ステートフル サービスとして Service Fabric で実行されているサービスにメッセージを投稿する Web サイトのデモを作成しようとしています。
すべてが順調に進み、クライアントは次のようなメッセージを投稿しました。
Service Fabric サービスのコンシューマーは次のように定義されました。
これにより、クラスでメッセージを使用できるようになり、問題なく処理できます。IReliableDictonary や IReliableQueue など、サービス ファブリック サービスの RunAsync 関数から実行されるコンテキストを参照する必要があるものを使用する場合に問題が発生します。
私の質問は、MassTransit がサービス コンテキスト自体を認識しているステートフル サービス ファブリック サービス内で動作するように構成するにはどうすればよいでしょうか (それは可能ですか) ?
よろしくお願いします。マイク
更新 OK、登録ルーチンをメッセージコンシューマークラスにポイントすると、これでいくらか進歩しました(例):
次に、メッセージの消費者クラスで次のことができます。
これで、サービス メッセージを正常に呼び出すことができます。
私が今抱えている問題は、IReliableDictionary に何かを保存しようとすることです。これを行うと、「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが発生します :( ... アイデアをいただければ幸いです (ただし、新年まで読むことはできません) !)
これがエラーの原因です....ヘルプ!:)
c# - 複数のキーを使用した Service Fabric Reliable Dictionary への 1 回の呼び出し
私の状況:
- 私の信頼できる辞書を格納するステートフル サービス。
- 他の Web アプリケーションがステートフル サービスと通信できるように、エンドポイントとして機能するステートレス WebAPI。
- 私の他の Web アプリケーションは、信頼できるディクショナリからデータを取得するために、ページ読み込みごとに 5000 回以上ステートレス WebAPI にアクセスしています。私は知っています... 私はこのレガシー コードを継承できる幸運な人です。
問題:
各呼び出しのレイテンシーは約 100 ミリ秒 (違いがある場合はローカルでデバッグしています) ですが、それを 5000 倍すると、約数分になります。
キーを渡して信頼できる辞書を 5000 回以上呼び出す代わりに、複数のキーを使用して Service Fabric を 1 回だけ呼び出すことはできますか?
azure-service-fabric - サービス ファブリックのステートフル サービスにステートレス サービスを注入する
信頼できるキュー (while ループ内) でデータを処理するステートフル サービスがあります。データの処理は、実際にはステートレス サービスを呼び出します。
ステートレス サービスはあるノードから別のノードに移動できるため、この依存関係 (ステートレス サービス) をステートフル サービスのコンストラクターに挿入しても安全ですか? コンストラクターで初期化/注入された依存関係が1つのノードに固定されていないことを確認したいだけです。