2016-12-27 10 views
2

こんにちは私は、バックアップしたいと思う信頼できる俳優がいくつかあります。 私は毎日フルバックアップと、状態が変わったら、そして各展開の前に増分バックアップを考えています。 documentationexampleを読むと、サービスを利用しているので私を助けませんでした。サービスファブリックのアクターをバックアップするための推奨方法

githubの例が見つかりました:https://github.com/Microsoft/azure-docs/blob/master/articles/service-fabric/service-fabric-reliable-actors-platform.md しかし、リモーティング契約を使用してすべてのアクタを呼び出すことに疑問があります。これは、その種類のシングルスレッドのため、アクターをブロックします。これは本当にベストプラクティスですか?

イベントハブにすべての変更を転送し、それを実際のデータベースに保存する方がいいでしょう。または、バックアップタスクをトリガーするアラームを使用する必要があります。

+0

私は俳優のサービスが呼び出され、俳優は自分自身ではないと思います。たぶん私は、バックアップジョブを行うしばらくの間(真)にタスクを作成します。 – Thieme

答えて

1

信頼できるアクターの抽象化はActorServiceで構築されています。 StatefulServiceBase(Reliable Service)の実装です。 Backup and restore Reliable Actorsで説明したように、信頼できるサービスを構築しているかのように、同じBackupAsyncRestoreAsync APIにアクセスするためにカスタムActorServiceを実装できます。したがって、思っていたようにActorServiceを定期的にバックアップするようプログラムすることができます。 ActorServiceがバックアップすると、そのレプリカにあるすべてのアクターがバックアップされます。したがって、Actorの状態が変わるたびにバックアップを取ることはコストがかかることがあります。あなたのアプリケーションに合った許容リカバリポイントを決め、関連する周期で段階的にバックアップすることをお勧めします。

カスタムActorServiceを構築する方法の詳細は、Custom Actor Serviceセクションにあります。

現在のリリースでは、ActorServiceは増分バックアップをサポートしていないことに注意してください。「KvsActorStateProviderは現在、フルバックアップのみをサポートしています」Backup and Restore Reliable Actors

+0

バックアップが動作しています。ありがとう!私はいくつかのファイルを持っています:restore.dat、新しい/ ActorStateStore、新しい/ ActorStateStore.pat、新しい/ edb00000002.log 私はこのファイルを何の成功もなく復元しようとしています:http://stackoverflow.com/questions/41360251/startサービス・ファブリック・パーティション・データ・オペレーション・タイムアウト – Thieme

関連する問題