Orleans 2.0官方文件(閆輝的個人翻譯)——3.2 有哪些Orleans包
Orleans NuGet 包 (v2.0.0-rc2)
關鍵包
在大多數情況下,您需要使用5個關鍵的NuGet包:
Microsoft Orleans Core Abstractions
PM> Install-Package Microsoft.Orleans.Core.Abstractions
它包含Orleans.Core.Abstractions.dll,這定義了開發應用程式程式碼(grain介面和類)所需的Orleans公共型別。任何一個Orleans專案,都需要直接或間接引用此包。在定義grain介面和類的專案中,新增它。
Microsoft Orleans構建時程式碼生成
-
Microsoft.Orleans.OrleansCodeGenerator.Build。
PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
自Orleans1.2.0起出現。為grain介面和實現介面的專案,提供構建時支援。將它新增到grain介面和實現介面的專案中,以啟用grain引用和序列化器的程式碼生成。
-
Microsoft.Orleans.CodeGenerator.MSBuild。
PM> Install-Package Microsoft.Orleans.CodeGenerator.MSBuild
作為Orleans 2.1.0的一部分出現。它是
Microsoft.Orleans.OrleansCodeGenerator.Build
包的替代品。利用Roslyn進行程式碼分析,以避免載入應用程式的二進位制檔案,並改進對增量構建的支援,從而縮短構建時間。
Microsoft Orleans Server 庫
PM> Install-Package Microsoft.Orleans.Server
一個易於構建和啟動silo的元資料包。包括以下包:
- Microsoft.Orleans.Core.Abstractions
- Microsoft.Orleans.Core
- Microsoft.Orleans.OrleansRuntime
- Microsoft.Orleans.OrleansProviders
Microsoft Orleans Client 庫
PM> Install-Package Microsoft.Orleans.Client
一個易於構建和啟動Orleans Client(前端)的元資料包。包括以下包:
- Microsoft.Orleans.Core.Abstractions
- Microsoft.Orleans.Core
- Microsoft.Orleans.OrleansProviders
Microsoft Orleans Core 庫
PM> Install-Package Microsoft.Orleans.Core
包含了應用程式程式碼和Orleans客戶端(前端)使用的大多數Orleans公共型別的實現。引用它來構建那些使用Orleans型別,但不處理承載或silo的庫和client應用程式。它包含在Microsoft.Orleans.Client和Microsoft.Orleans.Server元資料包中,並由大多數的其他包直接或間接引用。
承載
Microsoft Orleans Runtime
PM> Install-Package Microsoft.Orleans.OrleansRuntime
用於配置和啟動silo的庫。在您的silo承載專案中引用它。它包含在Microsoft.Orleans.Server元包中。
Microsoft Orleans Runtime Abstractions
PM> Install-Package Microsoft.Orleans.Runtime.Abstractions
包含了一些介面和抽象,這些介面和抽象在Microsoft.Orleans.OrleansRuntime中實現。
在Azure雲服務上承載Microsoft Orleans
PM> Install-Package Microsoft.Orleans.Hosting.AzureCloudServices
包含了幫助類,用於承載silo和Orleans client,並作為Azure雲服務(工作者角色和Web角色)。
Microsoft Orleans Service Fabric承載支援
PM> Install-Package Microsoft.Orleans.Hosting.ServiceFabric
包含了幫助類,用於承載silo,並作為無狀態的Service Fabric服務。
群集提供程式(Clustering Provider)
以下的包,包含了一些外掛,用於在各種儲存技術中,持久化叢集成員資料。
Microsoft Orleans clustering provider for Azure Table Storages
PM> Install-Package Microsoft.Orleans.Clustering.AzureStorage
包含了使用Azure表,來儲存叢集的成員資料的外掛。
Microsoft Orleans clustering provider for ADO.NET Providers
PM> Install-Package Microsoft.Orleans.Clustering.AdoNet
包括了使用ADO.NET,在所支援的資料庫中,儲存叢集成員資料的外掛。
Microsoft Orleans Consul Utilities
PM> Install-Package Microsoft.Orleans.OrleansConsulUtils
包含了使用Consul,來儲存叢集成員資料的外掛。
Microsoft Orleans ZooKeeper Utilities
PM> Install-Package Microsoft.Orleans.OrleansZooKeeperUtils
包含了使用ZooKeeper,來儲存叢集成員資料的外掛。
Microsoft Orleans clustering provider for AWS DynamoDB
PM> Install-Package Microsoft.Orleans.Clustering.DynamoDB
包括了使用AWS DynamoDB,來儲存叢集成員資料的外掛。
Reminder提供程式(Reminder Provider)
以下的包,包含了一些外掛,用於在各種儲存技術中,持久化Reminder。
Microsoft Orleans Reminders Azure Table Storage
PM> Install-Package Microsoft.Orleans.Reminders.AzureStorage
包含了使用Azure表,來儲存Reminder的外掛。
Microsoft Orleans Reminders ADO.NET Providers
PM> Install-Package Microsoft.Orleans.Reminders.AdoNet
包括了使用ADO.NET,在所受支援的資料庫中,儲存Reminder的外掛。
Microsoft Orleans reminders provider for AWS DynamoDB
PM> Install-Package Microsoft.Orleans.Reminders.DynamoDB
包括了使用AWS DynamoDB,來儲存Reminder的外掛。
Grain 儲存提供程式(Grain Storage Provider)
以下的包,包含了一些外掛,用於在各種儲存技術中,持久化grain的狀態。
Microsoft Orleans Persistence Azure Storage
PM> Install-Package Microsoft.Orleans.Persistence.AzureStorage
包括了使用Azure表或Azure Blob,來持久化grain狀態的外掛。
Microsoft Orleans Persistence ADO.NET Providers
PM> Install-Package Microsoft.Orleans.Persistence.AdoNet
包含了使用ADO.NET,在所支援的資料庫中,持久化grain狀態的外掛。
Microsoft Orleans Persistence DynamoDB
PM> Install-Package Microsoft.Orleans.Persistence.DynamoDB
包括了使用AWS DynamoDB,來持久化grain狀態的外掛。
流提供程式(Stream Provider)
以下的包,包含了用於遞送流事件的外掛。
Microsoft Orleans ServiceBus Utilities
PM> Install-Package Microsoft.Orleans.OrleansServiceBus
包括了Azure Event Hubs 的流提供程式。
Microsoft Orleans Streaming Azure Storage
PM> Install-Package Microsoft.Orleans.Streaming.AzureStorage
包括了Azure Queues的流提供程式。
Microsoft Orleans Streaming AWS SQS
PM> Install-Package Microsoft.Orleans.Streaming.SQS
包含了AWS SQS 服務的流提供程式。
Microsoft Orleans Google Cloud Platform Utilities
PM> Install-Package Microsoft.Orleans.OrleansGCPUtils
包含了GCP PubSub服務的流提供程式。
附加的包
Microsoft Orleans Code Generation
PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator
包括了執行時程式碼生成器。
Microsoft Orleans Event-Sourcing
PM> Install-Package Microsoft.Orleans.EventSourcing
包含了一組基型別,用於建立具有event-sourcing 狀態的grain類。
開發和測試
Microsoft Orleans Providers
PM> Install-Package Microsoft.Orleans.OrleansProviders
包含一組持久化和流的提供程式,用於將資料儲存在記憶體中。目的是測試。一般情況下,不推薦用於生產用途,除非能夠接受因silo故障而導致的資料丟失。
Microsoft Orleans Testing Host Library
PM> Install-Package Microsoft.Orleans.TestingHost
包含了用於在測試專案中承載silo和client的庫。
為向後相容的包
以下的包是為了向後相容,使易於從Orleans 1.x遷移到2.0
Microsoft Orleans Core Legacy Library
PM> Install-Package Microsoft.Orleans.Core.Legacy
包含1.x舊式的client配置物件和日誌記錄API。無需把client程式碼變更成新式的client構建器API和日誌記錄,從而使遷移變得更容易。
Microsoft Orleans Runtime Legacy Library
PM> Install-Package Microsoft.Orleans.Runtime.Legacy
包含1.x舊式的silo配置物件和承載API。無需把silo的配置和承載程式碼變更成新式的silo承載構建器API,從而使遷移變得更容易。
Microsoft Orleans Azure Utilities
PM> Install-Package Microsoft.Orleans.OrleansAzureUtils
一個元資料包,其中包含Azure提供程式的所有包,以簡化1.x專案的升級。
Microsoft Orleans Sql Utilities
PM> Install-Package Microsoft.Orleans.OrleansSqlUtils
一個元資料包,其中包含ADO.NET提供程式的所有包,以簡化1.x專案的升級。
Microsoft Orleans AWS Utilities
PM> Install-Package Microsoft.Orleans.OrleansAWSUtils
一個元資料包,其中包含AWS提供程式的所有包,以簡化1.x專案的升級。
Microsoft Orleans Service Fabric支援
PM> Install-Package Microsoft.Orleans.ServiceFabric
一個元資料包,包含Service Fabric提供程式的所有包,以簡化1.x專案的升級。
Microsoft Orleans Management Tool
PM> Install-Package Microsoft.Orleans.OrleansManager
包括Orleans的管理工具 - OrleansManager.exe。
序列化器
Microsoft Orleans Bond Serializer
PM> Install-Package Microsoft.Orleans.Serialization.Bond
包含了對Bond序列化器的支援。
Microsoft Orleans Google Utilities
PM> Install-Package Microsoft.Orleans.OrleansGoogleUtils
包含了Google Protocol Buffers序列化器。
Microsoft Orleans protobuf-net Serializer
PM> Install-Package Microsoft.Orleans.ProtobufNet
包含了Protocol Buffers序列化器的protobuf-net版。
遙測(Telemetry)
Microsoft Orleans Telemetry Consumer - 效能計數器
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters
Windows效能計數器實現了Orleans遙測API。
Microsoft Orleans Telemetry Consumer - Azure Application Insights
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI
包含了用於Azure Application Insights的遙測消費者。
Microsoft Orleans Telemetry Consumer - NewRelic
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic
包含了用於NewRelic的遙測消費者。
工具
Microsoft Orleans Performance Counter Tool
PM> Install-Package Microsoft.Orleans.CounterControl
包含了OrleansCounterControl.exe,對於Orleans統計資訊和已部署的grain類,它註冊Windows效能計數器類別。需要提升許可權。可以在Azure中,作為角色啟動任務的一部分,被執行。
事務
Microsoft Orleans Transactions支援
PM> Install-Package Microsoft.Orleans.Transactions
包含了對跨grain的事務支援(beta)。
Azure上的Microsoft Orleans事務
PM> Install-Package Microsoft.Orleans.Transactions.AzureStorage
包含了一個外掛,用於在Azure Table(beta)中,持久化事務日誌。