先决条件

Orleans 是一个.net 类库集,为了使用它,你需要.net 4.5.1 或者更高版本,开发工具集需要visual studio 2015 或者更高版本或者其他支持的开发工具,不支持Visual Studio的简化版本或者拓展包,但是你可以直接引用Orleans ,通过NuGet.

在生产环境中,Orleans 需要持久化存储,目前只支持一下技术产品之一:

Azure 就不多说了微软的云平台产品,当然就是要花钱买微软的云平台、云数据库了

SQL Server

Zookeeper 这又是个什么东东呢,说起它那就得提到在大数据存储、大数据运算下大名鼎鼎的Hadoop 了,它是属于Hadoop项目下的一个子项目,用来存储数据的,具体详细你就问度娘吧。

MySQL 一个数据库

Consul 这是什么,不会吧,我孤陋寡闻了,从来没听说过这么高达上的东西,好吧,问度娘:

Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,Consul的方案更"一站式",内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等)。使用起来也较 为简单。Consul用Golang实现,因此具有天然可移植性(支持Linux、windows和Mac OS X);安装包仅包含一个可执行文件,方便部署,与Docker等轻量级容器可无缝配合。

注意:以上产品使用我们会在后续章节中用示例的方式给大家展示,就期待吧。

Orleans Tools for Visual Studio

说起来也多亏visual studio 这个集大成的开发工具,做的那么贴心,犹如毒品,难以戒掉:

正如一如既往的vs Orleans 也给我们提供了模版化的项目创建,我们只需要安装这个vs 插件,然后就可以在vs 中看到Orleans的项目模版了,

下载地址 Orleans Tools for Visual Studio

然后就是安装了,如果成功安装好了,启动vs 就可以看到如下结构

如上图所示:1 是安装好后Orleans 的一个模版集节点,选中后左边面板中会有三个项目模版。

2 是我们项目中一个服务的承载项目,这里是用来测试用的,所以是一个控制台应用程序,同时也将host所需的类库nuget进来了。

针对你项目的需要,可以是一个windows 服务,一个控制台应用,一个Windows forms 的程序,或者也可以寄宿到iis的web中。

3 是grain的实现 ,我们大部分时间就是与里面的东西打交道,它里面是一些实现了grain借口,或者业务类的一系列类集合。

4 是grain 接口定义处,为何要孤立出来呢,因为将来这些接口是要暴露出来让其他需要的地方调用吗。

好了,就介绍到这里吧,你可以去试试。

ETG.Orleans.Templates.VSIX

这个也是vs 插件,就不多啰嗦了,直接下载安装就ok

Orleans NuGet Packages

orleans(1.2.2) 包

在大多数情况下,有4个关键的NuGet包你需要使用:

Microsoft.Orleans.OrleansCodeGenerator.Build

PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build 

grain 的接口或者实现项目提供构建支持,把他们添加到你的grain的接口和实现项目中可以实现grain引用和序列化的代码生成,
Microsoft.Orleans.Templates.Interfaces 和 Microsoft.Orleans.Templates.Grains 包已经废弃,仅仅是为了向后兼容而留用。

Microsoft.Orleans.Core

PM> Install-Package Microsoft.Orleans.Core

包含了Orleans.dll,定义了胆量的Orleans 的公共类型定义和客户端的部分,引用他来构建你的类库和客户端项目,不需要包括更多的其他提供者。

Microsoft.Orleans.Server

PM> Install-Package Microsoft.Orleans.Server
包含了你运行时需要的silos等的一些类型

Microsoft.Orleans.Client

PM> Install-Package Microsoft.Orleans.Client

包括一切你客户端需要的orleans 类型(前端)

额外的包

下面的包提供了额外的功能。

Microsoft.Orleans.OrleansServiceBus

PM> Install-Package Microsoft.Orleans.OrleansServiceBus

包含了云事件流提供程序中心。

Microsoft.Orleans.OrleansHost

PM> Install-Package Microsoft.Orleans.OrleansHost

包含了默认silo 主机(OrleansHost.exe),可以使用它来部署或者在云工作项里作为一个宿主来部署,他包括了Microsoft.Orleans.Server

Microsoft.Orleans.OrleansAzureUtils

PM> Install-Package Microsoft.Orleans.OrleansAzureUtils

在 Azure Worker/Web roles 包含了silos 和 clients 的一组简单的包装类的实例,提供了基于Table的membership,云存储的持久化和stream

Microsoft.Orleans.OrleansProviders

PM> Install-Package Microsoft.Orleans.OrleansProviders

包含一组内置的持久性和流provides ,包含在 Microsoft.Orleans.Client and Microsoft.Orleans.Server.

Microsoft.Orleans.CounterControl

PM> Install-Package Microsoft.Orleans.CounterControl

包含了OrleansCounterControl.exe (一个计数控制平台),为orleans注册Windows性能计数器类别统计和部署grains类。可以在云端的一部分,作为一个角色启动任务。包括在
microsoft.orleans.server。

Microsoft.Orleans.OrleansManager

PM> Install-Package Microsoft.Orleans.OrleansManager

包括奥尔良管理工具OrleansManager.exe。

Microsoft.Orleans.OrleansConsulUtils

PM> Install-Package Microsoft.Orleans.OrleansConsulUtils
使用Consul为集群成员数据存储提供的一个插件

Microsoft.Orleans.OrleansZooKeeperUtils

PM> Install-Package Microsoft.Orleans.OrleansZooKeeperUtils
使用ZooKeeper为集群成员数据存储提供的一个插件

Microsoft.Orleans.TestingHost

PM> Install-Package Microsoft.Orleans.TestingHost
为silos的主机测试项目提供的一个类库

Microsoft.Orleans.OrleansCodeGenerator

PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator

包括运行时代码生成。包括在Microsoft.Orleans.Server和Microsoft.Orleans.Client.里

Microsoft.Orleans.OrleansTelemetryConsumers.AI

PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.AI

Includes the telemetry consumer for Azure Application Insights.
(不太清楚,可能是对云应用的一种测试吧)

Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

PM> Install-Package Microsoft.Orleans.OrleansTelemetryConsumers.NewRelic

Includes the telemetry consumer for NewRelic.
同上

Microsoft.Orleans.Serialization.Bond

PM> Install-Package Microsoft.Orleans.Serialization.Bond
提供了Bond serializer.序列化的一个支持

Bond 是一个扩展框架,用来处理系统化数据,特别适合用来处理与大数据存储和处理服务的通讯。

Bond 定义了一个丰富的类型系统和 schema 版本化规则,允许向前向后兼容。核心特性包括高性能序列化和反序列化,非常强大的通用数据传输机制。该框架是高可扩展性的,通过可插入式的序列化协议、数据流和用户定义的类型别名等。

此外 Bond 是语言和平台独立的,当前支持 C++、C# 和 Python 语言。

namespace Examples
{
    using Bond;
    using Bond.Protocols;
    using Bond.IO.Safe;
 
    class Program
    {
        static void Main()
        {
            var src = new Example
            {
                Name = "FooBar",
                Constants = { 3.14, 6.28 }
            };
 
            var output = new OutputBuffer();
            var writer = new CompactBinaryWriter<OutputBuffer>(output);
 
            // The first calls to Serialize.To and Deserialize<T>.From can take
            // a relatively long time because they generate the de/serializer 
            // for a given type and protocol.
            Serialize.To(writer, src);
 
            var input = new InputBuffer(output.Data);
            var reader = new CompactBinaryReader<InputBuffer>(input);
 
            var dst = Deserialize<Example>.From(reader);
        }
    }
}
 
 
 

Microsoft Orleans 之安装的更多相关文章

  1. Microsoft Orleans 之 入门指南

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...

  2. Microsoft Orleans构建高并发、分布式的大型应用程序框架

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...

  3. vmware tools安装程序无法继续,Microsoft Runtime DLL安装程序未能完成安装。的解决方法

    vmware tools安装程序无法继续,Microsoft Runtime DLL安装程序未能完成安装.的解决方法_华英雄_新浪博客 http://blog.sina.com.cn/s/blog_5 ...

  4. [翻译]在Windows版或MacOS版的Microsoft Edge上安装一个谷歌浏览器拓展

    原文:Install a Chrome Web Store extension on Microsoft Edge for Windows and MacOS 拓展阅读:What to expect ...

  5. XP .Net 4.0使用Microsoft.Bcl需要安装XP补丁NDP40-KB2468871-v2-x86

    XP .Net 4.0使用Microsoft.Bcl需要安装XP补丁NDP40-KB2468871-v2-x86

  6. Microsoft Orleans 之简介

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...

  7. Microsoft office 2013安装图解

    Microsoft office 2013安装图解... ================ 简介: Microsoft Office 2013(Office 15)是微软的新一代Office办公软件, ...

  8. Microsoft Edge如何安装去广告插件

    Microsoft Edge如何安装去广告插件 第一步:安装最新版本Edge https://www.microsoft.com/zh-cn/edge?form=MA13DO&OCID=MA1 ...

  9. Microsoft Store应用安装路径和应用推荐——如何用Linux命令操控windows

    本人是cnblog萌新,刚学编程不久的菜鸟,这是我的第一篇博客,请各位轻喷 Microsoft store安装路径: 相信很多人都跟我一样有强迫症,文件找不到安装目录就不舒服.一开始在系统盘找不到Wi ...

随机推荐

  1. iPhone Plus手机的分辨率到底是多少,是1080×1920还是1242×2208?

    近日在准备AppStore上架的时候,需要提供屏幕快照,苹果官方的要求是: 5.5寸的iOS设备的分辨率是:是1080×1920:然而我们如果找一张Plus的屏幕截图,会发现截图的分辨率是1242×2 ...

  2. 数据采集与分析的那些事——从数据埋点到AB测试

    作者:网易有数郑栋. 一.为什么企业需要一套完善的用户行为埋点和分析平台 产品初创期间,需要分析天使用户的行为来改进产品,甚至从用户行为中得到新的思路或发现来调整产品方向:产品成长过程,通过对用户行为 ...

  3. spark 例子倒排索引

    spark 例子倒排索引 例子描述: [倒排索引(InvertedIndex)] 这个例子是在一本讲spark书中看到的,但是样例代码写的太java化,没有函数式编程风格,于是问了些高手,教我写了份函 ...

  4. 那些年我们追过的C#奇葩关键字——忐忑

    说到中国的歌坛,不能光说张学友这种大咖吧,我看那些怪咖更给力,比如我们的龚琳娜童鞋,一首神曲<忐忑>唱的那叫不可收拾,而且听到的改编版本更多,每一次都是心怀忐忑,就像C#里的那些关键字 说 ...

  5. 20155203 2016-2017-2《Java程序设计》课程总结

    目录 一.每周作业链接汇总 自认为写得最好一篇博客是?为什么? 作业中阅读量最高的一篇博客是?谈谈经验 作业中与师生交互最多的一篇博客是?谈谈收获 二.实验报告链接汇总 三.代码托管链接 四.课堂项目 ...

  6. 20155216 2016-2017-2 《Java程序设计》第三周学习总结

    教材学习内容总结 区分基本类型与类类型 类类型是自己定义产生的,基本类型是long,int,double等类型. 在类的定义过程中,可直接用class XXX {}对每个序定义的值域成员进行定义.这样 ...

  7. docker容器的启动、停止、运行、导入、导出、删除

    原文:docker容器的启动.停止.运行.导入.导出.删除 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/jiang425776024/articl ...

  8. PhoneGap3.2安装步骤

    1.首选安装好JDK.Android SDK.Ant 配置如下:        系统环境变量        ANDROID_HOME Value: C:\Development\adt-bundle\ ...

  9. Mysql优化分页

    背景: 库里面有张表,日增数据量百万条: 之前查询: SELECT * FROM `res_battery_data_history` LIMIT 1797000,10;

  10. 【NOIP2018】提高组题解

    [NOIP2018]提高组题解 其实就是把写过的打个包而已 道路铺设 货币系统 赛道修建 旅行 咕咕咕 咕咕咕