你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

KeyValueStoreReplica.BackupAsync 方法

定义

重载

BackupAsync(String, StoreBackupOption, Func<StoreBackupInfo,Task<Boolean>>)

异步创建键/值存储的备份。

BackupAsync(String, StoreBackupOption, Func<StoreBackupInfo,Task<Boolean>>, CancellationToken)

异步创建键/值存储的备份。

BackupAsync(String, StoreBackupOption, Func<StoreBackupInfo,Task<Boolean>>)

异步创建键/值存储的备份。

public System.Threading.Tasks.Task BackupAsync (string backupDirectory, System.Fabric.StoreBackupOption backupOption, Func<System.Fabric.StoreBackupInfo,System.Threading.Tasks.Task<bool>> postBackupAsyncFunc);
member this.BackupAsync : string * System.Fabric.StoreBackupOption * Func<System.Fabric.StoreBackupInfo, System.Threading.Tasks.Task<bool>> -> System.Threading.Tasks.Task
Public Function BackupAsync (backupDirectory As String, backupOption As StoreBackupOption, postBackupAsyncFunc As Func(Of StoreBackupInfo, Task(Of Boolean))) As Task

参数

backupDirectory
String

要存储备份的目录。 如果 backupOptionTruncateLogsOnly,则此参数应为 null。 否则,此参数不能为 null、空或仅包含空格。 还可以提供 UNC 路径。 如果目录不存在,则会创建该目录。 如果它存在且不为空,则增量备份失败并出现 FabricBackupDirectoryNotEmptyException

backupOption
StoreBackupOption

备份的选项。

postBackupAsyncFunc
Func<StoreBackupInfo,Task<Boolean>>

Service Fabric 调用的备份后异步方法,允许用户在将控制权返回到系统之前完成任何后备份活动。 如果为此传入 null ,则不允许增量备份。 如果备份后方法返回 false,则再次禁止增量备份。

返回

表示异步备份操作的任务。

例外

backupOption 不是 TruncateLogsOnly时,backupDirectorynull

backupOptionTruncateLogsOnly,backupDirectory 为空或仅包含空格,或者 backupOptionTruncateLogsOnly为 时 backupDirectory为 null

当 backupOptionIncremental 并且备份目录已包含文件或子目录时。

以前启动的备份当前正在进行时。

示例

下面是 postBackupAsyncFunc 的简单实现示例

private async Task<bool> SimplePostBackupHandler(StoreBackupInfo info)
{
    return await CopyBackupToAzureBlobStorage(info);
}

注解

如果在备份过程中出错,则不会调用 postBackupAsyncFunc 。 此外, 当 backupOptionTruncateLogsOnly 时,不会调用它,因为在这种情况下,用户无需执行进一步操作即可完成单个备份周期。

适用于

BackupAsync(String, StoreBackupOption, Func<StoreBackupInfo,Task<Boolean>>, CancellationToken)

异步创建键/值存储的备份。

public System.Threading.Tasks.Task BackupAsync (string backupDirectory, System.Fabric.StoreBackupOption backupOption, Func<System.Fabric.StoreBackupInfo,System.Threading.Tasks.Task<bool>> postBackupAsyncFunc, System.Threading.CancellationToken cancellationToken);
member this.BackupAsync : string * System.Fabric.StoreBackupOption * Func<System.Fabric.StoreBackupInfo, System.Threading.Tasks.Task<bool>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function BackupAsync (backupDirectory As String, backupOption As StoreBackupOption, postBackupAsyncFunc As Func(Of StoreBackupInfo, Task(Of Boolean)), cancellationToken As CancellationToken) As Task

参数

backupDirectory
String

要存储备份的目录。 如果 backupOptionTruncateLogsOnly,则此参数应为 null。 否则,此参数不能为 null、空或仅包含空格。 还可以提供 UNC 路径。 如果目录不存在,则会创建该目录。 如果它存在且不为空,则增量备份失败并出现 FabricBackupDirectoryNotEmptyException

backupOption
StoreBackupOption

备份的选项。

postBackupAsyncFunc
Func<StoreBackupInfo,Task<Boolean>>

Service Fabric 调用的备份后异步方法,允许用户在将控制权返回到系统之前完成任何后备份活动。 如果为此传入 null ,则不允许增量备份。 如果备份后方法返回 false,则再次禁止增量备份。

cancellationToken
CancellationToken

要监视取消请求的标记。

返回

表示异步备份操作的任务。

例外

backupOption 不是 TruncateLogsOnly时,backupDirectorynull

backupOptionTruncateLogsOnly,backupDirectory 为空或仅包含空格,或者 backupOptionTruncateLogsOnly为 时 backupDirectory为 null

当 backupOptionIncremental 并且备份目录已包含文件或子目录时。

以前启动的备份当前正在进行时。

示例

下面是 postBackupAsyncFunc 的简单实现示例

private async Task<bool> SimplePostBackupHandler(StoreBackupInfo info)
{
    return await CopyBackupToAzureBlobStorage(info);
}

注解

如果在备份过程中出错,则不会调用 postBackupAsyncFunc 。 此外, 当 backupOptionTruncateLogsOnly 时,不会调用它,因为在这种情况下,用户无需执行进一步操作即可完成单个备份周期。

适用于