Bibliotecas do Azure Service Fabric para .NET
Visão geral
O Azure Service Fabric é uma plataforma de sistemas distribuídos que facilita o empacotamento, implantação e gerenciamento de microsserviços e contêineres escalonáveis e confiáveis. Para obter mais informações, consulte a Documentação do Azure Service Fabric.
Biblioteca do cliente
Use a biblioteca de cliente do Service Fabric para interagir com um cluster Service Fabric existente. A biblioteca contém três categorias de APIs:
- As APIs do cliente são usadas para gerenciar, dimensionar e reciclar o cluster, bem como implantar pacotes de aplicativos.
- As APIs de execução são usadas para o aplicativo em execução interagir com seu cluster de hospedagem.
- As APIs comuns contêm os tipos usados nas APIs do cliente e de execução.
Instale o pacote NuGet diretamente do console do Gerenciador de Pacotes do Visual Studio ou com a CLI do .NET Core.
Gerenciador de Pacotes do Visual Studio
Install-Package Microsoft.ServiceFabric
dotnet add package Microsoft.ServiceFabric
Exemplos de código
O exemplo a seguir usa as APIs do cliente do Service Fabric para copiar um pacote de aplicativos para o repositório de imagens, provisionar o tipo de aplicativo e criar uma instância dele.
/* Include these dependencies
using System.Fabric;
using System.Fabric.Description;
*/
// Connect to the cluster.
FabricClient fabricClient = new FabricClient(clusterConnection);
// Copy the application package to a location in the image store
fabricClient.ApplicationManager.CopyApplicationPackage(imageStoreConnectionString, packagePath, packagePathInImageStore);
// Provision the application.
fabricClient.ApplicationManager.ProvisionApplicationAsync(packagePathInImageStore).Wait();
// Create the application instance.
ApplicationDescription appDesc = new ApplicationDescription(new Uri(appName), appType, appVersion);
fabricClient.ApplicationManager.CreateApplicationAsync(appDesc).Wait();
Este exemplo usa as APIs de execução e comuns do Service Fabric de dentro de um aplicativo hospedado para atualizar uma Coleção Confiável durante a execução.
using System.Fabric;
using Microsoft.ServiceFabric.Data.Collections;
using Microsoft.ServiceFabric.Services.Communication.Runtime;
using Microsoft.ServiceFabric.Services.Runtime;
/// <summary>
/// This is the main entry point for your service replica.
/// This method executes when this replica of your service becomes primary and has write status.
/// </summary>
/// <param name="cancellationToken">Canceled when Service Fabric needs to shut down this service replica.</param>
protected override async Task RunAsync(CancellationToken cancellationToken)
{
var myDictionary = await this.StateManager.GetOrAddAsync<IReliableDictionary<string, long>>("myDictionary");
while (true)
{
cancellationToken.ThrowIfCancellationRequested();
using (var tx = this.StateManager.CreateTransaction())
{
var result = await myDictionary.TryGetValueAsync(tx, "Counter");
await myDictionary.AddOrUpdateAsync(tx, "Counter", 0, (key, value) => ++value);
// If an exception is thrown before calling CommitAsync, the transaction aborts, all changes are
// discarded, and nothing is saved to the secondary replicas.
await tx.CommitAsync();
}
await Task.Delay(TimeSpan.FromSeconds(1), cancellationToken);
}
}
Biblioteca de Gerenciamento
A biblioteca de gerenciamento é usada para criar, atualizar e excluir os clusters Service Fabric.
Instale o pacote NuGet diretamente do console do Gerenciador de Pacotes do Visual Studio ou com a CLI do .NET Core.
Gerenciador de Pacotes do Visual Studio
Install-Package Microsoft.Azure.Management.ServiceFabric
dotnet add package Microsoft.Azure.Management.ServiceFabric
Exemplos
Azure SDK for .NET