次の方法で共有


StateReplicator インターフェイス

public interface StateReplicator

高可用性を確保するために状態を FabricReplicator レプリケートするために によって StateProvider 使用される クラスのレプリケーション関連の関数を公開します。

メソッドの概要

修飾子と型 メソッドと説明
OperationStream getCopyStream()

コピー ストリームを取得します

OperationStream getReplicationStream()

レプリケーション ストリームを取得します。

CompletableFuture<SequenceNumber> replicateAsync(OperationData operationData, SequenceNumber sequenceNumber, CancellationToken cancellationToken)

状態の変更をプライマリ レプリカからセカンダリ レプリカにレプリケートし、それらの状態変更が適用されたことを示すクォーラム確認を受け取ります。

void updateReplicatorSettings(ReplicatorSettings settings)

実行時にレプリケーター設定を変更できるようにします。 変更できる唯一の設定は、セキュリティ資格情報です。

メソッドの詳細

getCopyStream

public OperationStream getCopyStream()

コピー ストリームを取得します

戻り値:

返される CopyStream には、 を実装OperationするOperationDataオブジェクトが含まれています。 オブジェクトは OperationData 、プライマリ レプリカが から返す CopyState OperationDataStream から getCopyState(SequenceNumber upToSequenceNumber, OperationDataStream copyContext)取得されます。 レプリカが作成され、追いつく必要がある場合は、CopyStream を取得し、 を実装 Operationする Copy オブジェクトの送信、適用、確認を開始する必要があります。 並行して、レプリカは対応する と の呼び出しgetNextAsync(CancellationToken cancellationToken)に応答しますgetCopyContext()。 返された Operation メソッドが null の場合、ストリームは空です。

getReplicationStream

public OperationStream getReplicationStream()

レプリケーション ストリームを取得します。

戻り値:

ReplicationStream は を実装します OperationStream。 ReplicationStream には、 を実装OperationするOperationDataオブジェクトが含まれています。 オブジェクトは、 を介して replicateAsync(OperationData operationData, SequenceNumber sequenceNumber, CancellationToken cancellationToken)プライマリ レプリカによって提供されます。 通常、セカンダリ レプリカは を送信 getOperationAsync(CancellationToken cancellationToken)する必要があります。 Service Fabric ではサービスを必要としませんが、通常、サービスはコピー ストリームからすべての OperationData オブジェクトを転送してから、レプリケーション ストリームから操作を転送する必要があります。 両方のコピーからの並列転送はサポートされていますが、状態更新プログラムを正しく適用する複雑さが増し、高度なサービスにのみ推奨されます。 返された Operation メソッドが null の場合、ストリームは空です。

replicateAsync

public CompletableFuture replicateAsync(OperationData operationData, SequenceNumber sequenceNumber, CancellationToken cancellationToken)

状態の変更をプライマリ レプリカからセカンダリ レプリカにレプリケートし、それらの状態変更が適用されたことを示すクォーラム確認を受け取ります。

パラメーター:

operationData - プライマリ レプリカがレプリケートする状態の変更を表します。
sequenceNumber - Long、操作の LSN。 これは、タスクによって返されるのと同じ値であることに注意してください。 out パラメーターとして指定すると、タスクの終了時にコミットするローカル書き込みを準備するサービスに役立ちます。
cancellationToken - 失われたレプリカの書き込みクォーラム。 操作を取り消す必要があることを示す通知を送信するために使用できます。 取り消しはアドバイザリであり、取り消された場合でも操作が完了する可能性があることに注意してください。

戻り値:

long 型の完了可能な将来 (操作の LSN) を返します。

updateReplicatorSettings

public void updateReplicatorSettings(ReplicatorSettings settings)

実行時にレプリケーター設定を変更できるようにします。 変更できる唯一の設定は、セキュリティ資格情報です。

パラメーター:

settings - 資格情報が更新された新しい ReplicatorSettings

適用対象