レプリカがプライマリステータスを失いつつあるときに、メモリ内のデータを信頼性の高い辞書にダンプするシナリオがあります。プライマリレプリカが閉じる直前に信頼性の高いコレクションにデータを書き込む方法
キャンセルトークンを見て、RunAsyncメソッドで正しい方法を実行することはできますか?例:
protected override async Task RunAsync(CancellationToken cancellationToken)
{
while (true)
{
// exit only after data is dumped to reliable dictionary
if (cancellationToken.IsCancellationRequested)
{
await DumpDataToDictionaryAsync(data);
cancellationToken.ThrowIfCancellationRequested();
}
...
プライマリの切り替え時に通知されます。こちらを参照してください。https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-reliable-services-advanced-usage#stateful-サービスレプリカライフサイクル。情報を他の場所に保存することができます。 – Robert
これは実際にまともな考えです。私はリモーティングを介してデータを受け取る別のサービスを持つことができます。 –