Partilhar via


KeyValueStoreReplica.BackupAsync Método

Definição

Sobrecargas

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

Cria de forma assíncrona um backup do repositório de chave/valor.

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

Cria de forma assíncrona um backup do repositório de chave/valor.

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

Cria de forma assíncrona um backup do repositório de chave/valor.

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

Parâmetros

backupDirectory
String

O diretório em que o backup deve ser armazenado. Se backupOption for TruncateLogsOnly, esse parâmetro deverá ser nulo. Caso contrário, esse parâmetro não poderá ser nulo, vazio ou conter apenas espaço em branco. Caminhos UNC também podem ser fornecidos. Se o diretório não existir, ele será criado. Se ele existir e não estiver vazio, o backup incremental falhará com FabricBackupDirectoryNotEmptyException.

backupOption
StoreBackupOption

As opções para o backup.

postBackupAsyncFunc
Func<StoreBackupInfo,Task<Boolean>>

O método assíncrono pós-backup invocado pelo Service Fabric para permitir que o usuário conclua qualquer atividade pós-backup antes de retornar o controle ao sistema. Se nulo for passado para isso, os backups incrementais não serão permitidos. Se o método pós-backup retornar false, novamente, os backups incrementais não serão permitidos.

Retornos

Uma tarefa que representa a operação de backup assíncrona.

Exceções

backupDirectory é nulo quando backupOption não TruncateLogsOnlyé .

backupDirectory está vazio ou contém apenas espaços em branco quando backupOption não TruncateLogsOnly é ou backupDirectory não é nulo quando backupOption é TruncateLogsOnly.

Quando backupOption é Incremental e o diretório de backup já contém arquivos ou subdiretórios.

Quando um backup iniciado anteriormente está em andamento no momento.

Exemplos

Veja abaixo um exemplo de uma implementação simples de postBackupAsyncFunc

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

Comentários

O postBackupAsyncFunc não será invocado se houver um erro durante o backup. Além disso, ele não é invocado quando backupOption é TruncateLogsOnly , pois não há mais nenhuma ação necessária do usuário neste caso para concluir um único ciclo de backup.

Aplica-se a

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

Cria de forma assíncrona um backup do repositório de chave/valor.

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

Parâmetros

backupDirectory
String

O diretório em que o backup deve ser armazenado. Se backupOption for TruncateLogsOnly, esse parâmetro deverá ser nulo. Caso contrário, esse parâmetro não poderá ser nulo, vazio ou conter apenas espaço em branco. Caminhos UNC também podem ser fornecidos. Se o diretório não existir, ele será criado. Se ele existir e não estiver vazio, o backup incremental falhará com FabricBackupDirectoryNotEmptyException.

backupOption
StoreBackupOption

As opções para o backup.

postBackupAsyncFunc
Func<StoreBackupInfo,Task<Boolean>>

O método assíncrono pós-backup invocado pelo Service Fabric para permitir que o usuário conclua qualquer atividade pós-backup antes de retornar o controle ao sistema. Se nulo for passado para isso, os backups incrementais não serão permitidos. Se o método pós-backup retornar false, novamente, os backups incrementais não serão permitidos.

cancellationToken
CancellationToken

O token a se monitorar para solicitações de cancelamento.

Retornos

Uma tarefa que representa a operação de backup assíncrona.

Exceções

backupDirectory é nulo quando backupOption não TruncateLogsOnlyé .

backupDirectory está vazio ou contém apenas espaços em branco quando backupOption não TruncateLogsOnly é ou backupDirectory não é nulo quando backupOption é TruncateLogsOnly.

Quando backupOption é Incremental e o diretório de backup já contém arquivos ou subdiretórios.

Quando um backup iniciado anteriormente está em andamento no momento.

Exemplos

Veja abaixo um exemplo de uma implementação simples de postBackupAsyncFunc

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

Comentários

O postBackupAsyncFunc não será invocado se houver um erro durante o backup. Além disso, ele não é invocado quando backupOption é TruncateLogsOnly , pois não há mais nenhuma ação necessária do usuário neste caso para concluir um único ciclo de backup.

Aplica-se a