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.