Поделиться через


Orleans Пакеты NuGet

Потребители Orleans полагаются на различные пакеты NuGet для достижения конкретных требуемых действий. Существует несколько общих пакетов и абстракций, а также множество отдельных пакетов с одним назначением. В этой статье содержатся аналитические сведения, помогающие разработчикам узнать, какие Orleans пакеты следует использовать.

Ключевые пакеты

Вы ссылаетесь на один из двух взаимоисключающих пакетов NuGet при написании Orleans приложений в зависимости от выбранной рабочей нагрузки. Например, при написании Orleans Silo вы будете ссылать на Microsoft.Orleans. Пакет NuGet сервера . При написании клиентского Orleans приложения вы будете ссылать на Microsoft.Orleans. Пакет NuGet клиента . Все Orleans проекты, такие как абстракции или библиотеки классов зерна, ссылались на Microsoft.Orleans. Пакет NuGet sdk . Пакет Microsoft.Orleans.Sdk включается как с пакетами, так и Server с пакетамиClient.

Пакет NuGet Description
Microsoft.Orleans.Client Эксклюзивный пакет клиента, необходимый для Orleans клиента.
Microsoft.Orleans. Пакет SDK Метапакет, необходимый для всех Orleans приложений, серверов и клиентских пакетов, зависит от этого пакета.
Microsoft.Orleans. Сервер Эксклюзивный пакет сервера, необходимый для Orleans силосов.

Дополнительные сведения об установке пакетов NuGet см. в следующих параметрах:

Размещение на компьютере

Пакет NuGet Description
Microsoft.Orleans. Hosting.AzureCloudServices Размещение служебных программ для Azure Облачные службыOrleans.
Microsoft.Orleans. Hosting.Kubernetes Orleans поддержка размещения Kubernetes.
Microsoft.Orleans. Среды выполнения Основная библиотека Orleans среды выполнения этого узла и выполняет зерна в хранилище.

Поставщики кластеризации

Пакет NuGet Description
Microsoft.Orleans. Clustering.AzureStorage Orleans поставщик кластеризации, поддерживаемый хранилищем таблиц Azure.
Microsoft.Orleans. Clustering.AdoNet Orleans Поставщик кластеризации, поддерживаемый ADO.NET.
Microsoft.Orleans. Clustering.DynamoDB Orleans Поставщик кластеризации, поддерживаемый AWS DynamoDB.

Поставщики напоминаний

Пакет NuGet Description
Microsoft.Orleans. Напоминания Библиотека напоминаний для Майкрософт Orleans , используемая на сервере.
Microsoft.Orleans. Напоминания.AzureStorage Orleans поставщик напоминаний, поддерживаемый хранилищем таблиц Azure.
Microsoft.Orleans. Напоминания.AdoNet Orleans Поставщик напоминаний, поддерживаемый ADO.NET.
Microsoft.Orleans. Напоминания.DynamoDB Orleans поставщик напоминаний, поддерживаемый AWS DynamoDB.

Поставщики хранилища зерна

Пакет NuGet Description
Microsoft.Orleans. Persistence.AdoNet Orleans Поставщик сохраняемости, поддерживаемый ADO.NET.
Microsoft.Orleans. Persistence.AzureStorage Orleans Поставщик сохраняемости, поддерживаемый хранилищем таблиц Azure.
Microsoft.Orleans. Persistence.DynamoDB Orleans Поставщик сохраняемости, поддерживаемый AWS DynamoDB.
Microsoft.Orleans. Сохраняемость.Память Хранилище в памяти для Orleans.

Поставщики потоков

Пакет NuGet Description
Microsoft.Orleans. Течение Потоковая библиотека для Orleans использования как на клиенте, так и на сервере.
Microsoft.Orleans. Streaming.AzureStorage Orleans поставщик потоковой передачи, поддерживаемый хранилищем очередей Azure.
Microsoft.Orleans. Streaming.EventHubs Orleansпоставщик потоковой передачи, поддерживаемый Центры событий Azure.
Microsoft.Orleans. Streaming.SQS Orleans поставщик потоковой передачи, поддерживаемый AWS SQS.

Дополнительные пакеты

Пакет NuGet Description
Microsoft.Orleans. Анализаторы Анализаторы C# для Orleans.
Microsoft.Orleans. CodeGenerator Библиотека создания кода для Microsoft.Orleans.Serialization.
Microsoft.Orleans. EventSourcing Базовые типы для создания Orleans зерен с состоянием источника событий.
Microsoft.Orleans. Connections.Security Поддержка обмена данными по безопасности с помощью TLS в Orleans.

Разработка и тестирование

Пакет NuGet Description
Microsoft.Orleans. TestingHost Orleans библиотека для размещения сило в тестовом проекте.
Microsoft.Orleans. Transactions.TestKit.Base Базовая библиотека комплекта тестов для транзакций.
Microsoft.Orleans. Transactions.TestKit.xUnit Библиотека комплекта тестов xUnit для транзакций.
Microsoft.Orleans. Serialization.TestKit Тестовый комплект для проектов с помощью Microsoft.Orleans.Serialization.

Сериализаторы

Пакет NuGet Description
Microsoft.Orleans. Сериализация Быстрый, гибкий и терпимый сериализатор версий для .NET.
Microsoft.Orleans. Serialization.Abstractions Абстракции сериализации для Orleans.
Microsoft.Orleans. Serialization.SystemTextJson System.Text.Json интеграция для Microsoft.Orleans.Serialization.
Microsoft.Orleans. Serialization.FSharp Поддержка основного типа F# для Microsoft.Orleans.Serialization.
Microsoft.Orleans. Serialization.NewtonsoftJson Newtonsoft.Json интеграция для Microsoft.Orleans.Serialization.

Транзакции

Пакет NuGet Description
Microsoft.Orleans. Операций Базовая библиотека транзакций, Orleans используемая на сервере.
Microsoft.Orleans. Transactions.AzureStorage Orleansпоставщик хранилища транзакций, поддерживаемый служба хранилища Azure.

Инструменты

Одним из популярных Orleans инструментов является пакет NuGet OrleansDashboard . Эта панель мониторинга предоставляет некоторые простые метрики и аналитические сведения о том, что происходит внутри приложения Orleans . Дополнительные сведения см. в разделе GitHub: Orleans Панель мониторинга.

Ключевые пакеты

Существует 5 ключевых пакетов NuGet, которые необходимо использовать в большинстве сценариев:

Orleans Основные абстракции

Install-Package Microsoft.Orleans.Core.Abstractions

Содержит Orleans. Core.Abstractions.dll, который определяет Orleans общедоступные типы, необходимые для разработки кода приложения (интерфейсы и классы). Этот пакет необходимо напрямую или косвенно ссылаться на любой Orleans проект. Добавьте его в проекты, определяющие интерфейсы и классы.

Orleans Создание кода во время сборки

  • Microsoft.Orleans. OrleansCodeGenerator.Build.

    Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
    

    Появилась в Orleans версии 1.2.0. Поддержка времени сборки для интерфейсов и проектов реализации. Добавьте его в интерфейсы зерна и проекты реализации, чтобы обеспечить создание кода ссылок на зерна и сериализаторов.

  • Microsoft.Orleans. CodeGenerator.MSBuild.

    Install-Package Microsoft.Orleans.CodeGenerator.MSBuild
    

    Появился в составе Orleans 2.1.0. Альтернатива пакету Microsoft.Orleans.OrleansCodeGenerator.Build . Использует Roslyn для анализа кода, чтобы избежать загрузки двоичных файлов приложения и улучшает поддержку добавочных сборок, что приведет к более короткому времени сборки.

Orleans Серверные библиотеки

Install-Package Microsoft.Orleans.Server

Метапакет для легкого создания и запуска сило. Включает следующие пакеты:

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

Orleans Клиентские библиотеки

Install-Package Microsoft.Orleans.Client

Метапакет для легкого создания и запуска Orleans клиента (внешнего интерфейса). Включает следующие пакеты:

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

Orleans Базовая библиотека

Install-Package Microsoft.Orleans.Core

Содержит реализацию для большинства Orleans общедоступных типов, используемых кодом приложения и Orleans клиентами (интерфейсами). Ссылайтесь на него для создания библиотек и клиентских приложений, которые используют Orleans типы, но не имеют дело с размещением или силосами. Включен в Microsoft.Orleans. Клиент и Microsoft.Orleans. Метапакеты сервера и ссылаются прямо или косвенно по большинству других пакетов.

Размещение на компьютере

Orleans Среды выполнения

Install-Package Microsoft.Orleans.OrleansRuntime

Библиотека для настройки и запуска сило. Ссылка на него в хост-проекте silo. Включен в Microsoft.Orleans. Метапакет сервера.

Orleans Абстракции среды выполнения

Install-Package Microsoft.Orleans.Runtime.Abstractions

Содержит интерфейсы и абстракции для типов, реализованных в Microsoft.Orleans.OrleansRuntime.

OrleansРазмещение в Azure Облачные службы

Install-Package Microsoft.Orleans.Hosting.AzureCloudServices

Содержит вспомогательные классы для размещения силосов и Orleans клиентов как Azure Облачные службы (рабочие роли и веб-роли).

Orleans Поддержка размещения Service Fabric

Install-Package Microsoft.Orleans.Hosting.ServiceFabric

Содержит вспомогательные классы для размещения силосов в качестве службы Service Fabric без отслеживания состояния.

Поставщики кластеризации

Приведенные ниже пакеты включают подключаемые модули для сохранения данных о членстве в кластере в различных технологиях хранения.

Orleans Поставщик кластеризации для хранилищ таблиц Azure

Install-Package Microsoft.Orleans.Clustering.AzureStorage

Включает подключаемый модуль для использования таблиц Azure для хранения данных о членстве в кластере.

Orleans Поставщик кластеризации для поставщиков ADO.NET

Install-Package Microsoft.Orleans.Clustering.AdoNet

Включает подключаемый модуль для использования ADO.NET для хранения данных о членстве в кластере в одной из поддерживаемых баз данных.

Orleans Служебные программы consul

Install-Package Microsoft.Orleans.OrleansConsulUtils

Включает подключаемый модуль для использования Consul для хранения данных о членстве в кластере.

Orleans Служебные программы ZooKeeper

Install-Package Microsoft.Orleans.OrleansZooKeeperUtils

Включает подключаемый модуль для хранения данных о членстве в кластере с помощью ZooKeeper.

Orleans Поставщик кластеризации для AWS DynamoDB

Install-Package Microsoft.Orleans.Clustering.DynamoDB

Включает подключаемый модуль для использования AWS DynamoDB для хранения данных о членстве в кластере.

Поставщики напоминаний

Приведенные ниже пакеты включают подключаемые модули для сохранения напоминаний в различных технологиях хранения.

Orleans Напоминания о хранилище таблиц Azure

Install-Package Microsoft.Orleans.Reminders.AzureStorage

Включает подключаемый модуль для использования таблиц Azure для хранения напоминаний.

Orleans Напоминания ADO.NET поставщиков

Install-Package Microsoft.Orleans.Reminders.AdoNet

Включает подключаемый модуль для использования ADO.NET для хранения напоминаний в одной из поддерживаемых баз данных.

Orleans поставщик напоминаний для AWS DynamoDB

Install-Package Microsoft.Orleans.Reminders.DynamoDB

Включает подключаемый модуль для использования AWS DynamoDB для хранения напоминаний.

Поставщики хранилища зерна

Приведенные ниже пакеты включают подключаемые модули для сохранения состояния зерна в различных технологиях хранения.

OrleansСохраняемость служба хранилища Azure

Install-Package Microsoft.Orleans.Persistence.AzureStorage

Включает подключаемые модули для использования таблиц Azure или БОЛЬШИХ двоичных объектов Azure для хранения состояния зерна.

Orleans Поставщики ADO.NET сохраняемости

Install-Package Microsoft.Orleans.Persistence.AdoNet

Включает подключаемый модуль для использования ADO.NET для хранения состояния зерна в одной из поддерживаемых баз данных.

Orleans Сохраняемость DynamoDB

Install-Package Microsoft.Orleans.Persistence.DynamoDB

Включает подключаемый модуль для использования AWS DynamoDB для хранения состояния зерна.

Поставщики потоков

Приведенные ниже пакеты включают подключаемые модули для доставки событий потоковой передачи.

Orleans Служебные программы ServiceBus

Install-Package Microsoft.Orleans.OrleansServiceBus

Включает поставщик потоков для Центры событий Azure.

OrleansПотоковая служба хранилища Azure

Install-Package Microsoft.Orleans.Streaming.AzureStorage

Включает поставщик потоков для очередей Azure.

Orleans Потоковая передача AWS SQS

Install-Package Microsoft.Orleans.Streaming.SQS

Включает поставщик потоков для службы AWS SQS.

Orleans Служебные программы Google Cloud Platform

Install-Package Microsoft.Orleans.OrleansGCPUtils

Включает поставщик потоков для службы GCP PubSub.

Дополнительные пакеты

Orleans Создание кода

Install-Package Microsoft.Orleans.OrleansCodeGenerator

Включает генератор кода во время выполнения.

Orleans Event-Sourcing

Install-Package Microsoft.Orleans.EventSourcing

Содержит набор базовых типов для создания классов зерна с состоянием источника событий.

Разработка и тестирование

Orleans Поставщиков

Install-Package Microsoft.Orleans.OrleansProviders

Содержит набор поставщиков сохраняемости и потоков, которые хранят данные в памяти. Предназначено для тестирования. Как правило, не рекомендуется использовать в рабочей среде, если в случае сбоя силона данных не допускается.

Orleans Тестирование библиотеки узлов

Install-Package Microsoft.Orleans.TestingHost

Включает библиотеку для размещения силосов и клиентов в тестовом проекте.

Сериализаторы

Orleans Сериализатор бондов

Install-Package Microsoft.Orleans.Serialization.Bond

Включает поддержку сериализатора Бонда.

Orleans Служебные программы Google

Install-Package Microsoft.Orleans.OrleansGoogleUtils

Включает сериализатор буферов протокола Google.

Orleans Сериализатор protobuf-net

Install-Package Microsoft.Orleans.ProtobufNet

Включает в себя версию protobuf-net сериализатора буферов протокола.

Телеметрия

Orleans Потребитель телеметрии — счетчики производительности

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters

Реализация API телеметрии Windows.Orleans

OrleansПотребитель телеметрии — аналитика приложение Azure

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI

Включает потребитель телеметрии для приложение Azure Insights.

Orleans Потребитель телеметрии — NewRelic

Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

Включает потребитель телеметрии для NewRelic.

Транзакции

Orleans Поддержка транзакций

Install-Package Microsoft.Orleans.Transactions

Включает поддержку межзерновых транзакций (бета-версия).

Orleans Транзакции в Azure

Install-Package Microsoft.Orleans.Transactions.AzureStorage

Включает подключаемый модуль для сохранения журнала транзакций в таблице Azure (бета-версия).

Инструменты

Orleans Средство счетчика производительности

Install-Package Microsoft.Orleans.CounterControl

Включает в себя OrleansCounterControl.exe, которая регистрирует категории счетчиков производительности Windows для Orleans статистики и для развернутых классов зерна. Требуется повышение прав. Может выполняться в Azure в рамках задачи запуска роли.