Compartilhar via


Pacotes NuGet do Orleans

Os consumidores do Orleans contam com vários pacotes NuGet para obter comportamentos desejados específicos. Há vários pacotes e abstrações comuns e muitos pacotes individuais de uso único. Este artigo fornece insights para ajudar os desenvolvedores a aprender quais pacotes do Orleans devem ser usados.

Pacotes de chaves

Você faz referência a um dos dois pacotes NuGet mutuamente exclusivos ao escrever aplicativos do Orleans, dependendo da carga de trabalho escolhida. Por exemplo, ao escrever um Silo do Orleans, você fará referência ao pacote NuGet Microsoft.Orleans.Server. Ao escrever um aplicativo cliente do Orleans, você fará referência ao pacote NuGet Microsoft.Orleans.Client. Todos os projetos do Orleans, como abstrações ou bibliotecas de classes de granularidade, fazem referência ao pacote NuGet Microsoft.Orleans.Sdk. O pacote Microsoft.Orleans.Sdk está incluído nos pacotes Client e Server.

Pacote NuGet Description
Microsoft.Orleans.Client Pacote exclusivo do cliente, necessário para o cliente do Orleans.
Microsoft.Orleans.Sdk O metapacote exigido por todos os aplicativos, servidores e pacotes de cliente do Orleans dependem desse pacote.
Microsoft.Orleans.Server Pacote exclusivo do servidor, necessário para silos do Orleans.

Para obter mais informações sobre como instalar pacotes NuGet, confira as seguintes opções:

Hosting

Pacote NuGet Description
Microsoft.Orleans.Hosting.AzureCloudServices Utilitários de hospedagem para Serviços de Nuvem do Azure do Orleans.
Microsoft.Orleans.Hosting.Kubernetes Suporte de hospedagem do Orleans para Kubernetes.
Microsoft.Orleans.Runtime Biblioteca de runtime principal do Orleans que hospeda e executa granularidades em um silo.

Provedores de clustering

Pacote NuGet Description
Microsoft.Orleans.Clustering.AzureStorage Provedor de clustering do Orleans com suporte do Armazenamento de Tabelas do Azure.
Microsoft.Orleans.Clustering.AdoNet Provedor de clustering do Orleans com suporte do ADO.NET.
Microsoft.Orleans.Clustering.DynamoDB Provedor de clustering do Orleans com suporte do AWS DynamoDB.

Provedores de lembrete

Pacote NuGet Description
Microsoft.Orleans.Reminders Biblioteca de lembretes para Microsoft Orleans usada no servidor.
Microsoft.Orleans.Reminders.AzureStorage Provedor de lembretes do Orleans com suporte do Armazenamento de Tabelas do Azure.
Microsoft.Orleans.Reminders.AdoNet Provedor de lembretes do Orleans com suporte do ADO.NET.
Microsoft.Orleans.Reminders.DynamoDB Provedor de lembretes do Orleans com suporte do AWS DynamoDB.

Provedores de armazenamento de granularidade

Pacote NuGet Description
Microsoft.Orleans.Persistence.AdoNet Provedor de persistência do Orleans com suporte do ADO.NET.
Microsoft.Orleans.Persistence.AzureStorage Provedor de persistência do Orleans com suporte do Armazenamento de Tabelas do Azure.
Microsoft.Orleans.Persistence.DynamoDB Provedor de persistência do Orleans com suporte do AWS DynamoDB.
Microsoft.Orleans.Persistence.Memory Armazenamento na memória para o Orleans.

Provedores de fluxo

Pacote NuGet Description
Microsoft.Orleans.Streaming Biblioteca de streaming para o Orleans usada no cliente e no servidor.
Microsoft.Orleans.Streaming.AzureStorage Provedor de streaming do Orleans com suporte do Armazenamento de Filas do Azure.
Microsoft.Orleans.Streaming.EventHubs Provedor de streaming do Orleans com suporte dos Hubs de Eventos do Azure.
Microsoft.Orleans.Streaming.SQS Provedor de streaming do Orleans com suporte do AWS SQS.

Pacotes adicionais

Pacote NuGet Description
Microsoft.Orleans.Analyzers Analisadores de C# para Orleans.
Microsoft.Orleans.CodeGenerator Biblioteca de geração de código para Microsoft.Orleans.Serialization.
Microsoft.Orleans.EventSourcing Tipos base para criar granularidades do Orleans com estado de origem de evento.
Microsoft.Orleans.Connections.Security Suporte para comunicação de segurança usando TLS no Orleans.

Desenvolvimento e teste

Pacote NuGet Description
Microsoft.Orleans.TestingHost Biblioteca do Orleans para hospedar um silo em um projeto de teste.
Microsoft.Orleans.Transactions.TestKit.Base Biblioteca base do kit de teste para transações.
Microsoft.Orleans.Transactions.TestKit.xUnit Biblioteca de kits de teste do xUnit para transações.
Microsoft.Orleans.Serialization.TestKit Kit de teste para projetos usando Microsoft.Orleans.Serialization.

Serializadores

Pacote NuGet Description
Microsoft.Orleans.Serialization Serializador rápido, flexível e tolerante a versões para .NET.
Microsoft.Orleans.Serialization.Abstractions Abstrações de serialização para o Orleans.
Microsoft.Orleans.Serialization.SystemTextJson Integração System.Text.Json para Microsoft.Orleans.Serialization.
Microsoft.Orleans.Serialization.FSharp Suporte de tipo de núcleo F# para Microsoft.Orleans.Serialization.
Microsoft.Orleans.Serialization.NewtonsoftJson Integração Newtonsoft.Json para Microsoft.Orleans.Serialization.

Transactions

Pacote NuGet Description
Microsoft.Orleans.Transactions Biblioteca de transações principais do Orleans usada no servidor.
Microsoft.Orleans.Transactions.AzureStorage Provedor de armazenamento de transações do Orleans com suporte do Armazenamento do Azure.

Ferramentas

Uma ferramenta Orleans popular é o pacote NuGet OrleansDashboard. Esse painel fornece algumas métricas e insights simples sobre o que está acontecendo no seu aplicativo do Orleans. Para obter mais informações, consulte GitHub: Orleans Dashboard.

Pacotes de chaves

Existem cinco pacotes NuGet principais que você precisará usar na maioria dos cenários:

Abstrações principais do Orleans

Install-Package Microsoft.Orleans.Core.Abstractions

Contém o Orleans.Core.Abstractions.dll, que define os tipos públicos do Orleans necessários para desenvolver o código do aplicativo (interfaces e classes de granularidade). Esse pacote é necessário para ser referenciado direta ou indiretamente por qualquer projeto do Orleans. Adicione-o aos projetos que definemas interfaces e classes de granularidade.

Orleans geração de código para tempo de build

  • Microsoft.Orleans.OrleansCodeGenerator.Build.

    Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
    

    Apareceu no Orleans 1.2.0. Suporte ao tempo de compilação para interfaces de granularidade e projetos de implementação. Adicione-o às interfaces de granularidade e aos projetos de implementação para habilitar a geração de código das referências de granularidade e serializadores.

  • Microsoft.Orleans.CodeGenerator.MSBuild.

    Install-Package Microsoft.Orleans.CodeGenerator.MSBuild
    

    Apareceu como parte do Orleans 2.1.0. Uma alternativa para o pacote Microsoft.Orleans.OrleansCodeGenerator.Build. Utiliza o Roslyn para análise de código para evitar o carregamento de binários do aplicativo e melhora o suporte para compilações incrementais, o que deve resultar em tempos de compilação mais curtos.

Bibliotecas de servidor do Orleans

Install-Package Microsoft.Orleans.Server

Um metapacote para compilar e iniciar facilmente um silo. Inclui os seguintes pacotes:

  • Microsoft.Orleans.Core.Abstractions
  • Microsoft.Orleans.Core
  • Microsoft.Orleans.OrleansRuntime
  • Microsoft.Orleans.OrleansProviders

Bibliotecas de cliente do Orleans

Install-Package Microsoft.Orleans.Client

Um metapacote para compilar e iniciar facilmente um cliente do Orleans (front-end). Inclui os seguintes pacotes:

  • Microsoft.Orleans.Core.Abstractions
  • Microsoft.Orleans.Core
  • Microsoft.Orleans.OrleansProviders

Biblioteca principal do Orleans

Install-Package Microsoft.Orleans.Core

Contém a implementação da maioria dos tipos públicos do Orleans usados pelo código do aplicativo e pelos clientes do Orleans (front-ends). Referencie-o para compilar bibliotecas e aplicativos cliente que usam os tipos do Orleans, mas não lidam com hospedagem ou silos. Incluído nos metapacotes Microsoft.Orleans.Client e Microsoft.Orleans.Server e referenciado direta ou indiretamente pela maioria dos outros pacotes.

Hosting

Runtime doOrleans

Install-Package Microsoft.Orleans.OrleansRuntime

Biblioteca para configurar e iniciar um silo. Referencie-o no projeto de host do silo. Incluído no metapacote Microsoft.Orleans.Server.

Abstrações de runtime do Orleans

Install-Package Microsoft.Orleans.Runtime.Abstractions

Contém interfaces e abstrações para tipos implementados no Microsoft.Orleans.OrleansRuntime.

Hospedagem do Orleans nos Serviços de Nuvem do Azure

Install-Package Microsoft.Orleans.Hosting.AzureCloudServices

Contém classes auxiliares para hospedar silos e clientes do Orleans como Serviços de Nuvem do Azure (Funções de Trabalho e Funções Web).

Suporte à hospedagem do Service Fabric no Orleans

Install-Package Microsoft.Orleans.Hosting.ServiceFabric

Contém as classes auxiliares para hospedar silos como serviço sem estado do Service Fabric.

Provedores de clustering

Os pacotes abaixo incluem plug-ins para manter dados de associação de cluster em várias tecnologias de armazenamento.

Provedor de clustering do Orleans para Armazenamentos de Tabelas do Azure

Install-Package Microsoft.Orleans.Clustering.AzureStorage

Inclui o plug-in para usar as Tabelas do Azure para armazenar dados de associação de cluster.

Provedor de clustering do Orleans para provedores do ADO.NET

Install-Package Microsoft.Orleans.Clustering.AdoNet

Inclui o plug-in para usar o ADO.NET para armazenar dados de associação de cluster em um dos bancos de dados com suporte.

Utilitários do Orleans Consul

Install-Package Microsoft.Orleans.OrleansConsulUtils

Inclui o plug-in para usar o Consul para armazenar dados de associação de cluster.

Utilitários do Orleans ZooKeeper

Install-Package Microsoft.Orleans.OrleansZooKeeperUtils

Inclui o plug-in para usar o ZooKeeper para armazenar dados de associação de cluster.

Provedor de clustering do Orleans para AWS DynamoDB

Install-Package Microsoft.Orleans.Clustering.DynamoDB

Inclui o plug-in para usar o AWS DynamoDB para armazenar dados de associação de cluster.

Provedores de lembrete

Os pacotes abaixo incluem plug-ins para lembretes persistentes em várias tecnologias de armazenamento.

Lembretes do Orleans para Armazenamento de Tabelas do Azure

Install-Package Microsoft.Orleans.Reminders.AzureStorage

Inclui o plug-in para usar as Tabelas do Azure para armazenar lembretes.

Lembretes do Orleans para provedores do ADO.NET

Install-Package Microsoft.Orleans.Reminders.AdoNet

Inclui o plug-in para usar o ADO.NET para armazenar lembretes em um dos bancos de dados com suporte.

Provedor de lembretes do Orleans para AWS DynamoDB

Install-Package Microsoft.Orleans.Reminders.DynamoDB

Inclui o plug-in para usar o AWS DynamoDB para armazenar lembretes.

Provedores de armazenamento de granularidade

Os pacotes abaixo incluem plug-ins para estado de granularidade persistente em várias tecnologias de armazenamento.

Persistência do Orleans para Armazenamento do Azure

Install-Package Microsoft.Orleans.Persistence.AzureStorage

Inclui os plug-ins para usar as Tabelas do Azure ou os Blobs do Azure para armazenar o estado de granularidade.

Persistência do Orleans para provedores do ADO.NET

Install-Package Microsoft.Orleans.Persistence.AdoNet

Inclui o plug-in para usar o ADO.NET para armazenar o estado de granularidade em um dos bancos de dados com suporte.

Persistência do Orleans para o DynamoDB

Install-Package Microsoft.Orleans.Persistence.DynamoDB

Inclui o plug-in para usar o AWS DynamoDB para armazenar o estado de granularidade.

Provedores de fluxo

Os pacotes abaixo incluem plug-ins para fornecer eventos de streaming.

Utilitários do Barramento de Serviço do Orleans

Install-Package Microsoft.Orleans.OrleansServiceBus

Inclui o provedor de streaming para Hubs de Eventos do Azure.

Orleans Streaming para Armazenamento do Azure

Install-Package Microsoft.Orleans.Streaming.AzureStorage

Inclui o provedor de streaming para Filas do Azure.

Orleans Streaming para AWS SQS

Install-Package Microsoft.Orleans.Streaming.SQS

Inclui o provedor de streaming para serviço SQS do AWS.

Utilitários da Google Cloud Platform no Orleans

Install-Package Microsoft.Orleans.OrleansGCPUtils

Inclui o provedor de streaming para serviço GCP PubSub.

Pacotes adicionais

Geração de código do Orleans

Install-Package Microsoft.Orleans.OrleansCodeGenerator

Inclui o gerador de código em tempo de execução.

Fornecimento de eventos do Orleans

Install-Package Microsoft.Orleans.EventSourcing

Contém um conjunto de tipos base para criar classes de granularidade com o estado de origem de evento.

Desenvolvimento e teste

Provedores do Orleans

Install-Package Microsoft.Orleans.OrleansProviders

Contém um conjunto de provedores de persistência e streaming que mantêm os dados na memória. Indicado para teste. Em geral, não é recomendado para uso em produção, a menos que a perda de dados em caso de falha de silo seja aceitável.

Biblioteca de hosts de teste do Orleans

Install-Package Microsoft.Orleans.TestingHost

Inclui a biblioteca para hospedar silos e clientes em um projeto de teste.

Serializadores

Serializador do Orleans Bond

Install-Package Microsoft.Orleans.Serialization.Bond

Inclui suporte para serializador de Bond.

Utilitários do Google no Orleans

Install-Package Microsoft.Orleans.OrleansGoogleUtils

Inclui o serializador de Buffers de Protocolo do Google.

Serializador protobuf-net no Orleans

Install-Package Microsoft.Orleans.ProtobufNet

Inclui a versão protobuf-net do serializador de Buffers de Protocolo.

Telemetria

Consumidor de telemetria do Orleans – Contadores de desempenho

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters

Implementação de Contadores de Desempenho do Windows da API de Telemetria do Orleans.

Consumidor de telemetria do Orleans – Azure Application Insights

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI

Inclui o consumidor de telemetria do Azure Application Insights.

Consumidor de telemetria do Orleans – NewRelic

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

Inclui o consumidor de telemetria do NewRelic.

Transactions

Suporte para transações do Orleans

Install-Package Microsoft.Orleans.Transactions

Inclui suporte para transações entre granularidades (beta).

Transações do Orleans no Azure

Install-Package Microsoft.Orleans.Transactions.AzureStorage

Inclui um plug-in para log de transações persistente na Tabela do Azure (beta).

Ferramentas

Ferramenta Contador de Desempenho do Orleans

Install-Package Microsoft.Orleans.CounterControl

Inclui o OrleansCounterControl.exe, que registra as categorias do contador de desempenho do Windows para estatísticas do Orleans e para classes de granularidade implantadas. Requer elevação. Pode ser executado no Azure como parte de uma tarefa de inicialização de função.