在大多数情况下,您需要使用5个关键的NuGet包:
PM> Install-Package Microsoft.Orleans.Core.Abstractions
它包含Orleans.Core.Abstractions.dll,这定义了开发应用程序代码(grain接口和类)所需的Orleans公共类型。任何一个Orleans项目,都需要直接或间接引用此包。在定义grain接口和类的项目中,添加它。
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进行代码分析,以避免加载应用程序的二进制文件,并改进对增量构建的支持,从而缩短构建时间。
PM> Install-Package Microsoft.Orleans.Server
一个易于构建和启动silo的元数据包。包括以下包:
PM> Install-Package Microsoft.Orleans.Client
一个易于构建和启动Orleans Client(前端)的元数据包。包括以下包:
PM> Install-Package Microsoft.Orleans.Core
包含了应用程序代码和Orleans客户端(前端)使用的大多数Orleans公共类型的实现。引用它来构建那些使用Orleans类型,但不处理承载或silo的库和client应用程序。它包含在Microsoft.Orleans.Client和Microsoft.Orleans.Server元数据包中,并由大多数的其他包直接或间接引用。
PM> Install-Package Microsoft.Orleans.OrleansRuntime
用于配置和启动silo的库。在您的silo承载项目中引用它。它包含在Microsoft.Orleans.Server元包中。
PM> Install-Package Microsoft.Orleans.Runtime.Abstractions
包含了一些接口和抽象,这些接口和抽象在Microsoft.Orleans.OrleansRuntime中实现。
PM> Install-Package Microsoft.Orleans.Hosting.AzureCloudServices
包含了帮助类,用于承载silo和Orleans client,并作为Azure云服务(工作者角色和Web角色)。
PM> Install-Package Microsoft.Orleans.Hosting.ServiceFabric
包含了帮助类,用于承载silo,并作为无状态的Service Fabric服务。
以下的包,包含了一些插件,用于在各种存储技术中,持久化集群成员数据。
PM> Install-Package Microsoft.Orleans.Clustering.AzureStorage
包含了使用Azure表,来存储集群的成员数据的插件。
PM> Install-Package Microsoft.Orleans.Clustering.AdoNet
包括了使用ADO.NET,在所支持的数据库中,存储集群成员数据的插件。
PM> Install-Package Microsoft.Orleans.OrleansConsulUtils
包含了使用Consul,来存储集群成员数据的插件。
PM> Install-Package Microsoft.Orleans.OrleansZooKeeperUtils
包含了使用ZooKeeper,来存储集群成员数据的插件。
PM> Install-Package Microsoft.Orleans.Clustering.DynamoDB
包括了使用AWS DynamoDB,来存储集群成员数据的插件。
以下的包,包含了一些插件,用于在各种存储技术中,持久化Reminder。
PM> Install-Package Microsoft.Orleans.Reminders.AzureStorage
包含了使用Azure表,来存储Reminder的插件。
PM> Install-Package Microsoft.Orleans.Reminders.AdoNet
包括了使用ADO.NET,在所受支持的数据库中,存储Reminder的插件。
PM> Install-Package Microsoft.Orleans.Reminders.DynamoDB
包括了使用AWS DynamoDB,来存储Reminder的插件。
以下的包,包含了一些插件,用于在各种存储技术中,持久化grain的状态。
PM> Install-Package Microsoft.Orleans.Persistence.AzureStorage
包括了使用Azure表或Azure Blob,来持久化grain状态的插件。
PM> Install-Package Microsoft.Orleans.Persistence.AdoNet
包含了使用ADO.NET,在所支持的数据库中,持久化grain状态的插件。
PM> Install-Package Microsoft.Orleans.Persistence.DynamoDB
包括了使用AWS DynamoDB,来持久化grain状态的插件。
以下的包,包含了用于递送流事件的插件。
PM> Install-Package Microsoft.Orleans.OrleansServiceBus
包括了Azure Event Hubs 的流提供程序。
PM> Install-Package Microsoft.Orleans.Streaming.AzureStorage
包括了Azure Queues的流提供程序。
PM> Install-Package Microsoft.Orleans.Streaming.SQS
包含了AWS SQS 服务的流提供程序。
PM> Install-Package Microsoft.Orleans.OrleansGCPUtils
包含了GCP PubSub服务的流提供程序。
PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator
包括了运行时代码生成器。
PM> Install-Package Microsoft.Orleans.EventSourcing
包含了一组基类型,用于创建具有event-sourcing 状态的grain类。
PM> Install-Package Microsoft.Orleans.OrleansProviders
包含一组持久化和流的提供程序,用于将数据保存在内存中。目的是测试。一般情况下,不推荐用于生产用途,除非能够接受因silo故障而导致的数据丢失。
PM> Install-Package Microsoft.Orleans.TestingHost
包含了用于在测试项目中承载silo和client的库。
以下的包是为了向后兼容,使易于从Orleans 1.x迁移到2.0
PM> Install-Package Microsoft.Orleans.Core.Legacy
包含1.x旧式的client配置对象和日志记录API。无需把client代码变更成新式的client构建器API和日志记录,从而使迁移变得更容易。
PM> Install-Package Microsoft.Orleans.Runtime.Legacy
包含1.x旧式的silo配置对象和承载API。无需把silo的配置和承载代码变更成新式的silo承载构建器API,从而使迁移变得更容易。
PM> Install-Package Microsoft.Orleans.OrleansAzureUtils
一个元数据包,其中包含Azure提供程序的所有包,以简化1.x项目的升级。
PM> Install-Package Microsoft.Orleans.OrleansSqlUtils
一个元数据包,其中包含ADO.NET提供程序的所有包,以简化1.x项目的升级。
PM> Install-Package Microsoft.Orleans.OrleansAWSUtils
一个元数据包,其中包含AWS提供程序的所有包,以简化1.x项目的升级。
PM> Install-Package Microsoft.Orleans.ServiceFabric
一个元数据包,包含Service Fabric提供程序的所有包,以简化1.x项目的升级。
PM> Install-Package Microsoft.Orleans.OrleansManager
包括Orleans的管理工具 - OrleansManager.exe。
PM> Install-Package Microsoft.Orleans.Serialization.Bond
包含了对Bond序列化器的支持。
PM> Install-Package Microsoft.Orleans.OrleansGoogleUtils
包含了Google Protocol Buffers序列化器。
PM> Install-Package Microsoft.Orleans.ProtobufNet
包含了Protocol Buffers序列化器的protobuf-net版。
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.Counters
Windows性能计数器实现了Orleans遥测API。
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI
包含了用于Azure Application Insights的遥测消费者。
PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic
包含了用于NewRelic的遥测消费者。
PM> Install-Package Microsoft.Orleans.CounterControl
包含了OrleansCounterControl.exe,对于Orleans统计信息和已部署的grain类,它注册Windows性能计数器类别。需要提升权限。可以在Azure中,作为角色启动任务的一部分,被执行。
PM> Install-Package Microsoft.Orleans.Transactions
包含了对跨grain的事务支持(beta)。
PM> Install-Package Microsoft.Orleans.Transactions.AzureStorage
包含了一个插件,用于在Azure Table(beta)中,持久化事务日志。