微软奥尔良Orleans分布式应用框架已是跨平台

栏目: ASP.NET · 发布时间: 6年前

内容简介:Microsoft Orleans(奥尔良)是.NET的开源编程框架,最初由Microsoft Research的eXtreme Computing Group构建,可以使用虚拟角色actor简化分布式应用程序开发,这些角色是具有自己状态的单线程对象,它们不共享任何内存并通过使用异步远程过程调用交换消息进行通信,这些调用是按需激活的,当它们不再使用时被收集并按需要无缝地重新激活。因为运行时负责激活,清理和分发虚拟角色actor(奥尔良称之为grains),所以开发人员可以编写他们的代码,好像它在一台机器上

Microsoft Orleans(奥尔良)是.NET的开源编程框架,最初由Microsoft Research的eXtreme Computing Group构建,可以使用虚拟角色actor简化分布式应用程序开发,这些角色是具有自己状态的单线程对象,它们不共享任何内存并通过使用异步远程过程调用交换消息进行通信,这些调用是按需激活的,当它们不再使用时被收集并按需要无缝地重新激活。

因为运行时负责激活,清理和分发虚拟角色actor(奥尔良称之为grains),所以开发人员可以编写他们的代码,好像它在一台机器上运行而不用担心并发性,Orleans将其扩展到尽可能多的服务器。

当Microsoft 在2015年初开源奥尔良时 ,它需要.NET Framework,这意味着它只能在Windows Server上运行。2.0版本通过迁移到.NET Core来实现Orleans跨平台,.NET Core现在可以在 Linux 和macOS上运行(支持.NET Core 2.0和2.1,因此开发人员无需升级其.NET版本即可使用新奥尔良版本)。

Orleans已经支持依赖注入,主要是允许开发人员在运行时将依赖项注入到自己的应用程序代码中,所有内部组件都是可注射的。

奥尔良设计

熟悉的ASP.NET概念使新开发人员更容易学习,还使社区更容易为奥尔良做出贡献,这对项目来说变得越来越重要。

即将发布的2.1版本中最大的变化之一是调度程序,它可以处理孤岛中数百万个任务的执行,新的调度程序提供了30%的更高吞吐量 - 它是由GitHub社区成员编写的。

另一个重要特性是新的代码生成器。“奥尔良的一个重要价值主张是它易于使用。您可以编写代码,就像对象是本地的一样,即使它是远程的; 为此,我们生成透明的代理类和序列化器。您可以本地编写代码,该代码采用特定类型的参数,但需要从一台机器神奇地转移到另一台机器,我们编写序列化器来执行此操作。“

Orleans 2.1中新代码生成包的大部分代码也是由社区提供的。这使用Roslyn .NET编译器的代码分析来避免潜在的冲突以及与不同版本的.NET Core SDK冲突的依赖关系。“代码生成的新版本使用代码来编译代码:它根本不加载程序集,它没有版本绑定 - 它只是查找代码并生成序列化程序和代理引用的代码。”


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

智能主义

智能主义

周鸿祎 / 中信出版集团股份有限公司 / 2016-11-1 / CNY 49.00

大数据和人工智能迅猛发展,对社会和商业的影响日益深刻,从学术界到企业界,智能化时代必将来临,已经成为共识。而此次变革,将会开启新一轮的发展浪潮。企业家、互联网以及传统企业、个人,应当如何理解这一轮的发展,如何行动以抓住智能化所带来的众多机遇,成为所有人持之以恒的关注热点。 周鸿祎作为最具洞察力的互联网老兵、人工智能领域成功的先行者,通过总结360公司的战略布局、产品规划、方法论实践,从思想到......一起来看看 《智能主义》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具