Compartir a través de


Paquetes NuGet Orleans

Los consumidores de Orleans dependen de varios paquetes NuGet para lograr comportamientos deseados específicos. Hay varios paquetes y abstracciones comunes, y muchos paquetes individuales de propósito único. En este artículo se proporciona información para ayudar a los desarrolladores a aprender qué paquetes de Orleans se deben usar.

Paquetes principales

Orleans proporciona varios paquetes NuGet para diferentes escenarios. Al compilar un Orleans silo (servidor), haga referencia al paquete NuGet Microsoft.Orleans.Server. El paquete de Servidor incluye todo del paquete de Cliente, por lo que los proyectos de silo también pueden actuar como clientes sin dependencias adicionales. Al compilar una aplicación cliente autónoma que se conecta a un Orleans clúster, pero no hospeda un silo, haga referencia al paquete NuGet de cliente de Microsoft.Orleans. Todos los proyectos de Orleans, como abstracciones o bibliotecas de clases de grano, hacen referencia al paquete NuGet Microsoft.Orleans.Sdk. El paquete Microsoft.Orleans.Sdk se incluye con los paquetes Client y Server.

Detección de Descripción
Microsoft.Orleans. Cliente Biblioteca cliente para conectarse a Orleans clústeres.
Microsoft.Orleans. Sdk Metapaquete para el desarrollo de "grain", incluido en los paquetes de Cliente y Servidor.
Microsoft.Orleans. Servidor Biblioteca de servidores para hospedar Orleans silos.

Para más información sobre cómo instalar paquetes NuGet, consulte las siguientes opciones:

Orleans Panel de control

El panel oficial Orleans proporciona supervisión y visualización de clústeres en tiempo real.

Detección de Descripción
Microsoft.Orleans. Panel de control Orleans Panel para la visualización y supervisión de clústeres en tiempo real.
Microsoft.Orleans.Dashboard.Abstractions Abstracciones para el Orleans panel de control.

Nota:

Para obtener más información, consulte Orleans Tablero de control.

Herramientas

Una herramienta popular de Orleans es el paquete NuGet OrleansDashboard. Este panel proporciona algunas métricas sencillas e información sobre lo que sucede dentro de la aplicación Orleans. Para más información, consulte GitHub: Panel de Orleans.

Hospedaje

Detección de Descripción
Microsoft.Orleans. Hosting.Kubernetes Compatibilidad con el hospedaje de Orleans para Kubernetes.
Microsoft.Orleans. Ejecución Biblioteca principal en tiempo de ejecución de Orleans que hospeda y ejecuta granos en un silo.

Proveedores de agrupación en clústeres

Detección de Descripción
Microsoft.Orleans. Clustering.AzureStorage Proveedor de agrupación en clústeres de Orleans respaldado por Azure Table Storage.
Microsoft.Orleans. Clustering.AdoNet Proveedor de agrupación en clústeres de Orleans respaldado por ADO.NET.
Microsoft.Orleans. Clustering.DynamoDB Proveedor de agrupación en clústeres de Orleans respaldado por AWS DynamoDB.
Microsoft.Orleans.Clustering.Cosmos Orleans proveedor de agrupación en clústeres respaldado por Azure Cosmos DB.
Microsoft.Orleans.Clustering.Redis Orleans proveedor de agrupación en clústeres respaldado por Redis.
Microsoft.Orleans. Clustering.Cassandra Orleans proveedor de agrupación en clústeres respaldado por Apache Cassandra.
Microsoft.Orleans.Clustering.Consul Orleans proveedor de agrupación en clústeres respaldado por HashiCorp Consul.
Microsoft.Orleans. Clustering.ZooKeeper Orleans proveedor de agrupación en clústeres respaldado por Apache ZooKeeper.

Proveedores de recordatorios

Detección de Descripción
Microsoft.Orleans. Recordatorios Biblioteca de recordatorios de Microsoft Orleans usada en el servidor.
Microsoft.Orleans. Reminders.AzureStorage Proveedor de recordatorios de Orleans respaldado por Azure Table Storage.
Microsoft.Orleans. Reminders.AdoNet Proveedor de recordatorios de Orleans respaldado por ADO.NET.
Microsoft.Orleans. Reminders.DynamoDB Proveedor de recordatorios de Orleans respaldado por AWS DynamoDB.
Microsoft.Orleans.Reminders.Cosmos Orleans proveedor de recordatorios respaldado por Azure Cosmos DB.
Microsoft.Orleans.Reminders.Redis Orleans proveedor de recordatorios respaldado por Redis.

Proveedores de almacenamiento de granos

Detección de Descripción
Microsoft.Orleans. Persistence.AdoNet Proveedor de persistencia de Orleans respaldado por ADO.NET.
Microsoft.Orleans. Persistence.AzureStorage Proveedor de persistencia de Orleans respaldado por Azure Table Storage.
Microsoft.Orleans. Persistence.DynamoDB Proveedor de persistencia de Orleans respaldado por AWS DynamoDB.
Microsoft.Orleans.Persistence.Cosmos Orleans proveedor de persistencia respaldado por Azure Cosmos DB.
Microsoft.Orleans.Persistence.Redis Orleans proveedor de persistencia respaldado por Redis.
Microsoft.Orleans. Persistence.Memory Almacenamiento en memoria para Orleans.

Proveedores de directorios de granos

Detección de Descripción
Microsoft.Orleans. GrainDirectory.AzureStorage Orleans proveedor de directorios de grano respaldado por Azure Table Storage.
Microsoft.Orleans. GrainDirectory.AdoNet Orleans proveedor de directorios de grano respaldado por ADO.NET.
Microsoft.Orleans. GrainDirectory.Redis Orleans proveedor de directorios de grano respaldado por Redis.

Proveedores de secuencias

Detección de Descripción
Microsoft.Orleans. Streaming Biblioteca de streaming para Orleans usada tanto en el cliente como en el servidor.
Microsoft.Orleans. Streaming.AzureStorage Proveedor de streaming de Orleans respaldado por Azure Queue Storage.
Microsoft.Orleans. Streaming.EventHubs Proveedor de streaming de Orleans respaldado por Azure Event Hubs.
Microsoft.Orleans. Streaming.SQS Proveedor de streaming de Orleans respaldado por AWS SQS.

Paquetes adicionales

Detección de Descripción
Microsoft.Orleans. Analizadores Analizadores de C# para Orleans.
Microsoft.Orleans. CodeGenerator Biblioteca de generación de código para Microsoft.Orleans.Serialization.
Microsoft.Orleans. EventSourcing Tipos base para crear granos de Orleans con estado de origen de eventos.
Microsoft.Orleans. Connections.Security Compatibilidad con la comunicación de seguridad mediante TLS en Orleans.
Microsoft.Orleans. BroadcastChannel Compatibilidad con canales de difusión en Orleans.

Desarrollo y pruebas

Detección de Descripción
Microsoft.Orleans. TestingHost Biblioteca de Orleans para hospedar un silo en un proyecto de prueba.
Microsoft.Orleans. Transactions.TestKit.Base Biblioteca base del kit de pruebas para transacciones.
Microsoft.Orleans. Transactions.TestKit.xUnit Biblioteca del kit de pruebas de xUnit para transacciones.
Microsoft.Orleans. Serialization.TestKit Kit de prueba para proyectos que usan Microsoft.Orleans.Serialization.

Serializadores

Detección de Descripción
Microsoft.Orleans. Serialización Serializador rápido, flexible y tolerante a versiones para .NET.
Microsoft.Orleans. Serialization.Abstracciones Abstracciones de serialización para Orleans.
Microsoft.Orleans. Serialization.SystemTextJson Integración de System.Text.Json para Microsoft.Orleans.Serialization.
Microsoft.Orleans. Serialization.FSharp Compatibilidad con tipos principales de F# para Microsoft.Orleans.Serialization.
Microsoft.Orleans. Serialization.NewtonsoftJson Integración de Newtonsoft.Json para Microsoft.Orleans.Serialization.
Microsoft.Orleans. Serialization.MessagePack Integración de MessagePack para Microsoft.Orleans.Serialization.
Microsoft.Orleans.Serialization.Protobuf Integración de Protocol Buffers (Protobuf) para Microsoft.Orleans.Serialization.

Transacciones

Detección de Descripción
Microsoft.Orleans. Transacciones Biblioteca de transacciones principales de Orleans usada en el servidor.
Microsoft.Orleans. Transactions.AzureStorage Proveedor de almacenamiento de transacciones de Orleans respaldado por Azure Storage.

Paquetes principales

Hay cinco paquetes NuGet principales que necesitará usar en la mayoría de los escenarios:

Abstracciones principales de Orleans

Install-Package Microsoft.Orleans.Core.Abstractions

Contiene Orleans.Core.Abstractions.dll, que define los tipos públicos de Orleans necesarios para desarrollar código de aplicación (interfaces y clases de grano). Se debe hacer referencia directa o indirectamente a este paquete en cualquier proyecto de Orleans. Agréguelo a los proyectos que definen interfaces y clases de grano.

Generación de código de tiempo de compilación de Orleans

  • Microsoft.Orleans. OrleansCodeGenerator.Build.

    Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
    

    Apareció en Orleans 1.2.0. Incluye compatibilidad en tiempo de compilación para interfaces de grano y proyectos de implementación. Agréguelo a sus interfaces de grano y proyectos de implementación para habilitar la generación de código de serializadores y referencias de grano.

  • Microsoft.Orleans. CodeGenerator.MSBuild.

    Install-Package Microsoft.Orleans.CodeGenerator.MSBuild
    

    Apareció por primera vez como parte de Orleans 2.1.0. Es una alternativa al paquete Microsoft.Orleans.OrleansCodeGenerator.Build. Usa Roslyn para el análisis de código con el fin de evitar cargar archivos binarios de aplicación y mejora la compatibilidad con las compilaciones incrementales, lo que debería dar como resultado tiempos de compilación más cortos.

Bibliotecas de servidor de Orleans

Install-Package Microsoft.Orleans.Server

Se trata de un metapaquete para compilar e iniciar fácilmente un silo. Incluye los paquetes siguientes:

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

Bibliotecas cliente de Orleans

Install-Package Microsoft.Orleans.Client

Un metapaquete para compilar e iniciar fácilmente un cliente de Orleans (front-end). Incluye los paquetes siguientes:

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

Biblioteca principal de Orleans

Install-Package Microsoft.Orleans.Core

Contiene una implementación de la mayoría de los tipos públicos de Orleans usados por el código de la aplicación y los clientes de Orleans (front-end). Haga referencia a ella para compilar bibliotecas y aplicaciones cliente que usan tipos de Orleans, pero que no se ocupan del hospedaje o de los silos. Se incluye en los metapaquetes Microsoft.Orleans.Client y Microsoft.Orleans.Server, y la mayoría de los demás paquetes hacen referencia directa o indirectamente a ella.

Hospedaje

Entorno de ejecución de Orleans

Install-Package Microsoft.Orleans.OrleansRuntime

Se trata de una biblioteca para configurar e iniciar un silo. Haga referencia a ella en el proyecto de host de silo. Se incluye en el metapaquete Microsoft.Orleans.Server.

Abstracciones del entorno de ejecución de Orleans

Install-Package Microsoft.Orleans.Runtime.Abstractions

Contiene interfaces y abstracciones para los tipos implementados en Microsoft.Orleans.OrleansRuntime.

Hospedaje de Orleans en Azure Cloud Services

Install-Package Microsoft.Orleans.Hosting.AzureCloudServices

Contiene clases auxiliares para hospedar silos y clientes de Orleans como Azure Cloud Services (roles de trabajo y roles web).

Compatibilidad con el hospedaje de Service Fabric en Orleans

Install-Package Microsoft.Orleans.Hosting.ServiceFabric

Contiene clases auxiliares para hospedar silos como un servicio de Service Fabric sin estado.

Proveedores de agrupación en clústeres

Los paquetes siguientes incluyen complementos para conservar los datos de pertenencia a un clúster en varias tecnologías de almacenamiento.

Proveedor de agrupación en clústeres de Orleans para Azure Table Storage

Install-Package Microsoft.Orleans.Clustering.AzureStorage

Incluye el complemento para usar tablas de Azure para almacenar los datos de pertenencia a un clúster.

Proveedor de agrupación en clústeres de Orleans para proveedores de ADO.NET

Install-Package Microsoft.Orleans.Clustering.AdoNet

Incluye el complemento para usar ADO.NET para almacenar los datos de pertenencia a un clúster en una de las bases de datos admitidas.

Utilidades de Consul en Orleans

Install-Package Microsoft.Orleans.OrleansConsulUtils

Incluye el complemento para usar Consul para almacenar los datos de pertenencia a un clúster.

Utilidades de ZooKeeper en Orleans

Install-Package Microsoft.Orleans.OrleansZooKeeperUtils

Incluye el complemento para usar ZooKeeper para almacenar los datos de pertenencia a un clúster.

Proveedor de agrupación en clústeres de Orleans para AWS DynamoDB

Install-Package Microsoft.Orleans.Clustering.DynamoDB

Incluye el complemento para usar AWS DynamoDB para almacenar los datos de pertenencia a un clúster.

Proveedores de recordatorios

Los paquetes siguientes incluyen complementos para conservar recordatorios en varias tecnologías de almacenamiento.

Recordatorios de Orleans en Azure Table Storage

Install-Package Microsoft.Orleans.Reminders.AzureStorage

Incluye el complemento para usar tablas de Azure para almacenar recordatorios.

Recordatorios de Orleans en proveedores de ADO.NET

Install-Package Microsoft.Orleans.Reminders.AdoNet

Incluye el complemento para usar ADO.NET para almacenar recordatorios en una de las bases de datos admitidas.

Proveedor de recordatorios de Orleans para AWS DynamoDB

Install-Package Microsoft.Orleans.Reminders.DynamoDB

Incluye el complemento para usar AWS DynamoDB para almacenar recordatorios.

Proveedores de almacenamiento de granos

Los paquetes siguientes incluyen complementos para conservar el estado de los granos en varias tecnologías de almacenamiento.

Proveedor de persistencia de Orleans respaldado por Azure Storage

Install-Package Microsoft.Orleans.Persistence.AzureStorage

Incluye los complementos para usar tablas o blobs de Azure para almacenar el estado de los granos.

Proveedor de persistencia de Orleans respaldado por ADO.NET

Install-Package Microsoft.Orleans.Persistence.AdoNet

Incluye el complemento para usar ADO.NET para almacenar el estado de los granos en una de las bases de datos admitidas.

Proveedor de persistencia de Orleans respaldado por DynamoDB

Install-Package Microsoft.Orleans.Persistence.DynamoDB

Incluye el complemento para usar AWS DynamoDB para almacenar el estado de los granos.

Proveedores de secuencias

Los paquetes siguientes incluyen complementos para entregar eventos de streaming.

Utilidades de ServiceBus de Orleans

Install-Package Microsoft.Orleans.OrleansServiceBus

Incluye el proveedor de secuencias para Azure Event Hubs.

Proveedor de streaming de Orleans respaldado por Azure Storage

Install-Package Microsoft.Orleans.Streaming.AzureStorage

Incluye el proveedor de secuencias para colas de Azure.

Proveedor de streaming de Orleans respaldado por AWS SQS

Install-Package Microsoft.Orleans.Streaming.SQS

Incluye el proveedor de secuencias para el servicio AWS SQS.

Utilidades de Google Cloud Platform en Orleans

Install-Package Microsoft.Orleans.OrleansGCPUtils

Incluye el proveedor de secuencias para el servicio GCP PubSub.

Paquetes adicionales

Generación de código de Orleans

Install-Package Microsoft.Orleans.OrleansCodeGenerator

Incluye el generador de código en tiempo de ejecución.

Origen de eventos de Orleans

Install-Package Microsoft.Orleans.EventSourcing

Contiene un conjunto de tipos base para crear clases de grano con estado originado en eventos.

Desarrollo y pruebas

Proveedores de Orleans

Install-Package Microsoft.Orleans.OrleansProviders

Contiene un conjunto de proveedores de persistencia y secuencias que conservan los datos en memoria. Está destinado para las pruebas. En general, no se recomienda para su uso en producción, a menos que la pérdida de datos en caso de error del silo sea aceptable.

Biblioteca de host de pruebas de Orleans

Install-Package Microsoft.Orleans.TestingHost

Incluye la biblioteca para hospedar silos y clientes en un proyecto de prueba.

Serializadores

Serializador Bond de Orleans

Install-Package Microsoft.Orleans.Serialization.Bond

Incluye compatibilidad con el serializador de Bond.

Utilidades de Google en Orleans

Install-Package Microsoft.Orleans.OrleansGoogleUtils

Incluye el serializador de Protocol Buffers de Google.

Serializador protobuf-net en Orleans

Install-Package Microsoft.Orleans.ProtobufNet

Incluye la versión protobuf-net del serializador de Protocol Buffers.

Telemetría

Consumidor de telemetría de Orleans: contadores de rendimiento

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters

Implementación de contadores de rendimiento de Windows de la API de telemetría de Orleans.

Consumidor de telemetría de Orleans: Azure Application Insights

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI

Incluye el consumidor de telemetría para Azure Application Insights.

Consumidor de telemetría de Orleans: NewRelic

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

Incluye el consumidor de telemetría para NewRelic.

Transacciones

Compatibilidad con transacciones de Orleans

Install-Package Microsoft.Orleans.Transactions

Incluye compatibilidad con transacciones entre granos (beta).

Transacciones de Orleans en Azure

Install-Package Microsoft.Orleans.Transactions.AzureStorage

Incluye un complemento para conservar el registro de transacciones en tablas de Azure (beta).

Herramientas

Herramienta Contador de rendimiento de Orleans

Install-Package Microsoft.Orleans.CounterControl

Incluye OrleansCounterControl.exe, que registra las categorías de contadores de rendimiento de Windows para las estadísticas de Orleans y para las clases de grano implementadas. Requiere elevación. Se puede ejecutar en Azure como parte de una tarea de inicio de roles.