Partager via


Packages NuGet Orleans

Les consommateurs d’Orleans s’appuient sur différents packages NuGet pour obtenir des comportements spécifiques souhaités. Il existe plusieurs packages et abstractions courants, ainsi que de nombreux packages individuels à usage unique. Cet article fournit des insights pour aider les développeurs à savoir quels packages Orleans doivent être utilisés.

Packages clés

Vous référencez l’un des deux packages NuGet mutuellement exclusifs lors de l’écriture d’applications Orleans, en fonction de la charge de travail choisie. Par exemple, lorsque vous écrivez un silo Orleans, vous référencez le package NuGet Microsoft.Orleans.Server. Lorsque vous écrivez une application cliente Orleans, vous référencez le package NuGet Microsoft.Orleans.Client. Tous les projets Orleans, comme les abstractions ou les bibliothèques de classes de grain, référencent le package NuGet Microsoft.Orleans.Sdk. Le package Microsoft.Orleans.Sdk est inclus avec les Client packages et Server.

Package NuGet Description
Microsoft.Orleans.Client Package exclusif client, requis pour le client Orleans.
Microsoft.Orleans.Sdk Le métapackage requis par toutes les applications, tous les packages serveur et tous les clients Orleans dépendant de ce package.
Microsoft.Orleans.Server Package exclusif serveur, requis pour les silos Orleans.

Pour plus d’informations sur l’installation des packages NuGet, consultez les options suivantes :

Hébergement

Package NuGet Description
Microsoft.Orleans.Hosting.AzureCloudServices Utilitaires d’hébergement pour les services cloud Azure d’Orleans.
Microsoft.Orleans.Hosting.Kubernetes Prise en charge de l’hébergement Orleans pour Kubernetes.
Microsoft.Orleans.Runtime Bibliothèque de runtime principale d’Orleans qui héberge et exécute des grains dans un silo.

Fournisseur de clustering

Package NuGet Description
Microsoft.Orleans.Clustering.AzureStorage Fournisseur de clustering Orleans soutenu par Stockage Table Azure.
Microsoft.Orleans.Clustering.AdoNet Fournisseur de clustering Orleans soutenu par ADO.NET.
Microsoft.Orleans.Clustering.DynamoDB Fournisseur de clustering Orleans soutenu par AWS DynamoDB.

Fournisseurs de rappels

Package NuGet Description
Microsoft.Orleans.Reminders Bibliothèque de rappels pour Microsoft Orleans utilisée sur le serveur.
Microsoft.Orleans.Reminders.AzureStorage Fournisseur de rappels Orleans soutenu par Stockage Table Azure.
Microsoft.Orleans.Reminders.AdoNet Fournisseur de rappels Orleans soutenu par ADO.NET.
Microsoft.Orleans.Reminders.DynamoDB Fournisseur de rappels Orleans soutenu par AWS DynamoDB.

Fournisseurs de stockage de grains

Package NuGet Description
Microsoft.Orleans.Persistence.AdoNet Fournisseur de persistance Orleans soutenu par ADO.NET.
Microsoft.Orleans.Persistence.AzureStorage Fournisseur de persistance Orleans soutenu par Stockage Table Azure.
Microsoft.Orleans.Persistence.DynamoDB Fournisseur de persistance Orleans soutenu par AWS DynamoDB.
Microsoft.Orleans.Persistence.Memory Stockage en mémoire pour Orleans.

Fournisseurs de flux

Package NuGet Description
Microsoft.Orleans.Streaming Bibliothèque de streaming pour Orleans utilisée à la fois sur le client et le serveur.
Microsoft.Orleans.Streaming.AzureStorage Fournisseur de streaming Orleans soutenu par Stockage File d’attente Azure.
Microsoft.Orleans.Streaming.EventHubs Fournisseur de streaming Orleans soutenu par Azure Event Hubs.
Microsoft.Orleans.Streaming.SQS Fournisseur de streaming Orleans soutenu par AWS SQS.

Packages supplémentaires

Package NuGet Description
Microsoft.Orleans.Analyzers Analyseurs C# pour Orleans.
Microsoft.Orleans.CodeGenerator Bibliothèque de génération de code pour Microsoft.Orleans.Serialization.
Microsoft.Orleans.EventSourcing Types de base pour la création de grains Orleans avec un état basé sur les événements.
Microsoft.Orleans.Connections.Security Prise en charge de la communication de sécurité à l’aide de TLS dans Orleans.

Développement et test

Package NuGet Description
Microsoft.Orleans.TestingHost Bibliothèque Orleans pour l’hébergement d’un silo dans un projet de test.
Microsoft.Orleans.Transactions.TestKit.Base Bibliothèque de base du kit de test pour les transactions.
Microsoft.Orleans.Transactions.TestKit.xUnit Bibliothèque du kit de test xUnit pour les transactions.
Microsoft.Orleans.Serialization.TestKit Kit de test pour les projets utilisant Microsoft.Orleans.Serialization.

Sérialiseurs

Package NuGet Description
Microsoft.Orleans.Serialization Sérialiseur rapide, flexible et tolérant aux versions pour .NET.
Microsoft.Orleans.Serialization.Abstractions Abstractions de sérialisation pour Orleans.
Microsoft.Orleans.Serialization.SystemTextJson Intégration de System.Text.Json pour Microsoft.Orleans.Serialization.
Microsoft.Orleans.Serialization.FSharp Prise en charge du type de cœur F# pour Microsoft.Orleans.Serialization.
Microsoft.Orleans.Serialization.NewtonsoftJson Intégration de Newtonsoft.Json pour Microsoft.Orleans.Serialization.

Transactions

Package NuGet Description
Microsoft.Orleans.Transactions Bibliothèque de transactions de base d’Orleans utilisée sur le serveur.
Microsoft.Orleans.Transactions.AzureStorage Fournisseur de stockage de transactions Orleans soutenu par Stockage Azure.

Outils

Un outil Orleans populaire est le package NuGet OrleansDashboard. Ce tableau de bord fournit des métriques et des insights simples sur ce qui se passe à l’intérieur de votre application Orleans. Pour plus d’informations, consultez GitHub : Tableau de bord Orleans.

Packages clés

Il existe 5 packages NuGet clés que vous devez utiliser dans la plupart des scénarios :

Abstractions principales Orleans

Install-Package Microsoft.Orleans.Core.Abstractions

Contient Orleans.Core.Abstractions.dll, qui définit les types publics Orleans nécessaires au développement de code d’application (interfaces et classes de grain). Ce package doit être référencé directement ou indirectement par n’importe quel projet Orleans. Ajoutez-le à vos projets qui définissent des interfaces et des classes de grain.

Génération de code durant la génération Orleans

  • Microsoft.Orleans.OrleansCodeGenerator.Build.

    Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
    

    Introduction dans Orleans 1.2.0. Prise en charge au moment de la génération pour les interfaces de grain et les projets d’implémentation. Ajoutez-le à vos interfaces de grain et projets d’implémentation pour activer la génération de code des références et des sérialiseurs de grain.

  • Microsoft.Orleans.CodeGenerator.MSBuild.

    Install-Package Microsoft.Orleans.CodeGenerator.MSBuild
    

    Est apparu dans le cadre d’Orleans 2.1.0. Alternative au package Microsoft.Orleans.OrleansCodeGenerator.Build. Tire parti de Roslyn pour l’analyse du code afin d’éviter le chargement des fichiers binaires d’application et améliore la prise en charge des builds incrémentielles, ce qui devrait entraîner des temps de génération plus courts.

Bibliothèques serveur Orleans

Install-Package Microsoft.Orleans.Server

Méta-package permettant de créer et de démarrer facilement un silo. Inclut les packages suivants :

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

Bibliothèque clientes Orleans

Install-Package Microsoft.Orleans.Client

Méta-package permettant de créer et de démarrer facilement un client Orleans (front-end). Inclut les packages suivants :

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

Bibliothèque principale Orleans

Install-Package Microsoft.Orleans.Core

Contient l’implémentation de la plupart des types publics Orleans utilisés par le code d’application et les clients Orleans (front-ends). Référencez-le pour la création de bibliothèques et d’applications clientes qui utilisent des types Orleans, mais qui ne traitent pas de l’hébergement ni des silos. Inclus dans les méta-packages Microsoft.Orleans.Client et Microsoft.Orleans.Server, et référencé directement ou indirectement par la plupart des autres packages.

Hosting

Runtime Orleans

Install-Package Microsoft.Orleans.OrleansRuntime

Bibliothèque pour la configuration et le démarrage d’un silo. Référencez-le dans votre projet d’hôte de silo. Inclus dans le méta-package Microsoft.Orleans.Server.

Abstractions de runtime Orleans

Install-Package Microsoft.Orleans.Runtime.Abstractions

Contient des interfaces et des abstractions pour les types implémentés dans Microsoft.Orleans.OrleansRuntime.

Hébergement sur Azure Cloud Services Orleans

Install-Package Microsoft.Orleans.Hosting.AzureCloudServices

Contient des classes d’assistance pour héberger des silos et des clients Orleans en tant que services cloud Azure (rôles de travail et rôles web).

Prise en charge de l’hébergement d’Orleans sur Service Fabric

Install-Package Microsoft.Orleans.Hosting.ServiceFabric

Contient des classes d’assistance pour héberger des silos en tant que service Service Fabric sans état.

Fournisseur de clustering

Les packages ci-dessous incluent des plug-ins pour rendre persistantes les données d’appartenance au cluster dans diverses technologies de stockage.

Fournisseur de clustering Orleans pour les stockages de tables Azure

Install-Package Microsoft.Orleans.Clustering.AzureStorage

Inclut le plug-in pour l’utilisation des tables Azure pour le stockage des données d’appartenance au cluster.

Fournisseur de clustering Orleans pour les fournisseurs ADO.NET

Install-Package Microsoft.Orleans.Clustering.AdoNet

Inclut le plug-in permettant d’utiliser ADO.NET pour stocker les données d’appartenance au cluster dans l’une des bases de données prises en charge.

Utilitaires Consul d’Orleans

Install-Package Microsoft.Orleans.OrleansConsulUtils

Inclut le plug-in pour l’utilisation de Consul pour le stockage des données d’appartenance au cluster.

Utilitaires ZooKeeper d’Orleans

Install-Package Microsoft.Orleans.OrleansZooKeeperUtils

Inclut le plug-in pour l’utilisation de ZooKeeper pour le stockage des données d’appartenance au cluster.

Fournisseur de clustering Orleans pour AWS DynamoDB

Install-Package Microsoft.Orleans.Clustering.DynamoDB

Inclut le plug-in pour l’utilisation de AWS DynamoDB pour le stockage des données d’appartenance au cluster.

Fournisseurs de rappels

Les packages ci-dessous incluent des plug-ins pour rendre persistants les rappels dans diverses technologies de stockage.

Stockage Table Azure des rappels Orleans

Install-Package Microsoft.Orleans.Reminders.AzureStorage

Inclut le plug-in permettant d’utiliser les tables Azure pour stocker les rappels.

Fournisseurs ADO.NET des rappels Orleans

Install-Package Microsoft.Orleans.Reminders.AdoNet

Inclut le plug-in permettant d’utiliser ADO.NET pour stocker les rappels dans l’une des bases de données prises en charge.

Fournisseur des rappels Orleans pour AWS DynamoDB

Install-Package Microsoft.Orleans.Reminders.DynamoDB

Inclut le plug-in pour l’utilisation d’AWS DynamoDB pour stocker des rappels.

Fournisseurs de stockage de grains

Les packages ci-dessous incluent des plug-ins pour rendre persistant l’état des grains dans diverses technologies de stockage.

Persistance Stockage Azure Orleans

Install-Package Microsoft.Orleans.Persistence.AzureStorage

Inclut les plug-ins permettant d’utiliser les tables Azure ou les objets blob Azure pour stocker l’état des grains.

Fournisseurs ADO.NET de persistance Orleans

Install-Package Microsoft.Orleans.Persistence.AdoNet

Inclut le plug-in permettant d’utiliser ADO.NET pour stocker l’état des grains dans l’une des bases de données prises en charge.

DynamoDB pour la persistance Orleans

Install-Package Microsoft.Orleans.Persistence.DynamoDB

Inclut le plug-in permettant d’utiliser AWS DynamoDB pour stocker l’état des grains.

Fournisseurs de flux

Les packages ci-dessous incluent des plug-ins pour la remise des événements de streaming.

Utilitaires ServiceBus d’Orleans

Install-Package Microsoft.Orleans.OrleansServiceBus

Inclut le fournisseur de flux pour Azure Event Hubs.

Stockage Azure en diffusion en continu Orleans

Install-Package Microsoft.Orleans.Streaming.AzureStorage

Inclut le fournisseur de flux pour les files d’attente Azure.

Diffusion en continu Orleans - AWS SQS

Install-Package Microsoft.Orleans.Streaming.SQS

Inclut le fournisseur de flux pour le service AWS SQS.

Utilitaires Google Cloud Platform Orleans

Install-Package Microsoft.Orleans.OrleansGCPUtils

Inclut le fournisseur de flux pour le service GCP PubSub.

Packages supplémentaires

Génération de code Orleans

Install-Package Microsoft.Orleans.OrleansCodeGenerator

Inclut le générateur de code d’exécution.

Approvisionnement en événements Orleans

Install-Package Microsoft.Orleans.EventSourcing

Contient un ensemble de types de base pour la création de classes de grain avec un état approvisionné en événements.

Développement et test

Fournisseurs Orleans

Install-Package Microsoft.Orleans.OrleansProviders

Contient un ensemble de fournisseurs de persistance et de flux qui gardent les données en mémoire. Conçu pour les tests. En général, non recommandé pour une utilisation en production, sauf si la perte de données en cas de défaillance de silo est acceptable.

Bibliothèque d’hôtes de test Orleans

Install-Package Microsoft.Orleans.TestingHost

Inclut la bibliothèque permettant d’héberger les silos et les clients dans un projet de test.

Sérialiseurs

Sérialiseur Bond d’Orleans

Install-Package Microsoft.Orleans.Serialization.Bond

Inclut la prise en charge du sérialiseur Bond.

Utilitaires Google d’Orleans

Install-Package Microsoft.Orleans.OrleansGoogleUtils

Inclut le sérialiseur des mémoires tampon de protocole Google.

Sérialiseur protobuf-net d’Orleans

Install-Package Microsoft.Orleans.ProtobufNet

Inclut la version protobuf-net du sérialiseur de mémoires tampon de protocole.

Télémétrie

Consommateur de télémétrie Orleans – Compteurs de performances

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters

Implémentation des compteurs de performances Windows de l’API Télémétrie d’Orleans.

Consommateur de télémétrie Orleans – Azure Application Insights

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI

Inclut le consommateur de télémétrie pour Azure Application Insights.

Consommateur de télémétrie Orleans – NewRelic

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

Inclut le consommateur de télémétrie pour NewRelic.

Transactions

Prise en charge des transactions Orleans

Install-Package Microsoft.Orleans.Transactions

Inclut la prise en charge des transactions entre grains (bêta).

Transactions sur Azure Orleans

Install-Package Microsoft.Orleans.Transactions.AzureStorage

Inclut un plug-in pour rendre persistant le journal des transactions dans la table Azure (bêta).

Outils

Outil compteur de performances Orleans

Install-Package Microsoft.Orleans.CounterControl

Inclut OrleansCounterControl.exe, qui inscrit les catégories de compteurs de performances Windows pour les statistiques Orleans et pour les classes de grain déployées. Nécessite une élévation. Peut être exécuté dans Azure dans le cadre d’une tâche de démarrage de rôle.