当前位置: 首页 > news >正文

网站的排版微网站教程

网站的排版,微网站教程,网站存在风险什么意思,企业关键词优化价格一、介绍Orleans是一个框架#xff0c;提供了一个直接的方法来构建分布式高规模计算应用程序默认可扩展 -》 Orleans处理构建分布式系统的复杂性#xff0c;使您的应用程序能够扩展到数百台服务器。低延迟 -》 Orleans允许你在内存中保持你需要的状态#xff0c;所以你的应用… 一、介绍Orleans是一个框架提供了一个直接的方法来构建分布式高规模计算应用程序默认可扩展 -》 Orleans处理构建分布式系统的复杂性使您的应用程序能够扩展到数百台服务器。低延迟 -》 Orleans允许你在内存中保持你需要的状态所以你的应用程序可以快速响应传入的请求。简化的并发性 -》 Orleans允许你编写简单的单线程C代码处理异步消息在对象Grains之间传递的并发性。在OrleansGrains是应用程序代码的基石。Grains是实现一致性接口的.net类的实例。接口的异步方法用于指示Grains可以执行哪些操作public interface IMyGrain : IGrainWithStringKey {Taskstring SayHello(string name); }这个实现是在Orleans框架内执行的public class MyGrain : IMyGrain{    public Taskstring SayHello(string name)    {        return Task.FromResult($Hello {name});    }}然后你可以通过获取一个代理对象一个Grains参考来调用grain然后调用这些方法var grain GrainClient.GrainFactory.GetGrainIMyGrain(grain1);await grain.SayHello(World); 二、背景云应用程序和服务本质上是并行和分布式的。 他们也是互动和动态的; 通常需要近实时的云实体之间的直接交互。 这样的应用程序今天很难建立。 开发过程需要专家级程序员并且随着工作负载的增长通常需要昂贵的设计和体系结构迭代。当今大多数高规模的属性都是作为无状态n层服务的组合而构建的其中大部分应用程序逻辑位于中间层。 虽然该模型允许通过向中间层添加更多服务器来扩展但由于大多数来自前端Web服务器的中间层请求需要来自存储的一个或多个读取所以受到存储层的性能和可伸缩性的限制 更新更加复杂并且由于中间层服务器之间缺乏协调而容易发生并发问题和冲突。 通常需要无状态层中的缓存来获得可接受的性能增加复杂性并引入缓存一致性问题。 无状态n层模型的另一个问题是它不支持中间层公开的各个应用实体之间良好的水平通信这使得难以实现复杂的业务逻辑多个实体执行单独的操作作为处理 请求。 二、Orleans 作为一个有状态的中间层Orleans提供了一种构建有状态中间层的直观方式其中各种业务逻辑实体显示为分布在一组服务器中的不同应用程序定义类型的独立全局可寻址.NET对象grains。grain类型是一个简单的.NET类它实现了一个或多个应用程序定义的grain接口。单个grain是应用程序定义的grain类的实例它们是由Orleans运行时自动创建的在服务器上根据需要处理这些grain的请求。grain自然映射到大多数应用程序实体例如用户设备会话库存订单等等这使得构建面向对象的业务逻辑变得非常容易而在一组服务器上透明地扩展。每个grain在由其应用逻辑选择的grain类型内具有稳定的逻辑身份密钥例如用户电子邮件或设备ID或库存SKU代码。 Orleans保证每个单独grain的单线程执行从而保护应用程序逻辑免受并发和竞争的危险。在微服务领域Orleans被用作实现微服务的框架微服务可以由开发人员选择的微服务部署/管理解决方案进行部署和管理。 三、Grain生命周期grain可以在存储或内存状态或两者的组合中具有持续状态。任何grain都可以通过任何其他grain或前端客户通过使用目标grain的逻辑身份来调用而不需要创建或实例化目标grain。Orleans的编程模型使grain看起来好像在整个内存中。实际上grain从整个生命周期开始只是存储持久状态到在内存中被实例化到从内存中移除grain需要工作时Orleans在后台实例化激活grain当它们闲置太久时将它们从内存中移除停用以回收硬件资源。运行时的grain生命周期管理工作对应用程序代码是透明的将其从分布式资源管理的复杂任务中解放出来。应用程序逻辑可以用所有可用的“地址空间”来编写而无需使用硬件资源来将所有的grain同时存储在内存中这在概念上类似于虚拟内存在操作系统中的工作方式。此外grain的虚拟属性允许Orleans处理服务器故障这主要是透明地处理应用程序逻辑因为在故障被检测到的情况下在故障服务器上执行的grain会自动在集群中的其他服务器上重新实例化。  四、虚拟ActorsOrleans的实施是基于20世纪70年代以来的Actor 模型。然而与Erlang或Akka等传统Actor 系统中的Actor 不同Orleans grain是虚拟Actor 。最大的不同是grain的物理实例被完全抽象出来并由Orleans运行时自动管理。虚拟Actor 模型更适合于像云服务这样的大规模动态工作负载并且是Orleans的主要创新。 五、Orleans的起源Orleans创建于微软研究院设计用于云计算。自2011年以来,它已被广泛地应用在云计算和前提由几个微软产品组,尤其是通过游戏工作室,如343产业和光环背后的联盟作为云服务平台和战争机器4 4/5,以及许多其他公司。Orleans在2015年1月是开源的吸引了许多开发人员他们形成了一个最活跃的开源社区。净生态系统。在开发人员社区和微软的Orleans团队之间的积极协作中每天都会增加和改进特性。微软的研究继续与Orleans团队合作以带来新的主要特征如地理分布、索引和分布式事务这正在推动艺术的发展。对许多人来说Orleans已经成为构建分布式系统和云服务的首选框架。网络开发者。 六、优点Orleans的主要优点是:开发人员的生产力即使是非专业的程序员;在默认情况下透明的可伸缩性轻松实现伸缩。我们将在下面扩展这些优点。1开发人员生产力Orleans编程模型通过提供以下关键抽象保证和系统服务提高了专家和非专业程序员的工作效率。熟悉的面向对象编程(OOP)范式。 Actors是. net类它使用异步方法实现声明的. net actor接口。这样参与者就可以作为远程对象出现而这些对象的方法可以直接调用。这为程序员提供了熟悉的OOP范式方法是将方法调用转换为消息将它们路由到正确的端点调用目标参与者的方法以完全透明的方式处理故障和角落情况。单线程执行的Actors。运行时保证了一个参与者一次不会在多个线程上执行。与其他参与者的隔离相结合程序员从不在actor级别上面对并发因此永远不需要使用锁或其他同步机制来控制对共享数据的访问。仅这一特性就使得分布式应用程序的开发成为了非专家程序员的专利。透明激活。运行时激活一个Actor只是在有消息要处理时才启动。这将清晰地分离了创建引用到Actor的概念它是由应用程序代码可见和控制的并且在内存中对Actor进行物理激活这对应用程序是透明的。它决定何时禁用或激活一个Actor;应用程序可以不间断地访问逻辑创建的Actor的完整“内存空间”不管它们是否在特定时间点的物理内存中。透明激活能够通过在硬件资源池中放置和迁移Actor来实现动态的、自适应的负载均衡。该特性是传统Actor模型的一个显著改进在此模型中Actor的生存期是应用程序管理的。位置透明性。程序员用来调用Actor的方法或传递给其他组件的Actor引用(代理对象)只包含了Actor的逻辑标识。将Actor的逻辑标识翻译到它的物理位置和相应的消息路由是由Orleans 运行时完成的。应用程序代码与Actors进行通信而忽略它们的物理位置由于故障或资源管理可能会随着时间的推移而改变或者因为在调用时Actor会被禁用。与持久性存储的透明集成。Orleans允许将Actors的内存状态的声明映射到持久性存储。它同步更新透明地保证调用者只有在持久状态成功更新后才会收到结果。扩展和/或自定义现有的持久存储提供程序集是直接的。错误自动传播。运行时通过异步和分布式的try / catch的语义自动将未处理的错误向上传递到调用链中。因此错误不会在应用程序中丢失。这允许程序员在适当的地方放置错误处理逻辑而不需要在每个层次上手工传播错误。 2默认的透明可伸缩性Orleans编程模型旨在指导程序员通过几个数量级来扩展他们的应用程序或服务。这是通过结合已被证明的最佳实践和模式来完成的并提供了较低级别系统功能的有效实现。下面是一些关键的因素它们支持可伸缩性和性能。 应用状态的隐式grain分区。通过将Actors作为直接可寻址的实体程序员将隐式地破坏其应用程序的整体状态。虽然Orleans编程模型没有规定Actor的大小在大多数情况下是有意义有一个相对大量的actors——百万甚至更多——应用程序的每个代表一个自然实体,如用户帐户,一个购买订单,等。Actors是单独可寻址和他们的物理位置抽象的运行时,Orleans在平衡负载和以透明和通用的方式处理热点问题方面具有极大的灵活性无需任何应用程序开发人员的考虑。自适应资源管理。与Actors作任何假设本地其他Actors他们相互作用,由于位置透明性,运行时可以管理和调整可用HW资源配置在一个非常动态的方式通过细grain决定位置/ Actors迁移反应的计算集群负载和交流模式没有失败传入的请求。通过创建特定actor的多个副本运行时可以在必要时增加Actor的吞吐量而无需对应用程序代码进行任何更改。多路复用通信。Orleans 的Actors 有逻辑端点它们之间的消息传递是通过一组固定的全部物理连接(TCP套接字)进行复用的。这允许运行时在每个actor中承载一个非常大的(数百万)可寻址的实体。此外actor的激活/注销不需要注册/取消物理端点的注册例如TCP端口或HTTP URL甚至关闭TCP连接。有效的调度。运行时调度大量单线程的Actors在一个自定义线程池中执行每个线程池都有一个物理处理器内核。以非阻塞延续的方式编写的Actor代码(对Orleans 编程模型的需求)应用程序代码以非常高效的“协作”的多线程方式运行并且没有争用。这使得系统能够达到很高的吞吐量并在非常高的CPU利用率(高达90%以上)的情况下运行并具有很大的稳定性。事实上系统中Actors的数量增长和负载不会导致额外的线程或其他OS原语帮助单个节点和整个系统的可伸缩性。在操作系统中叫原语,是执行过程中不可被打断的基本操作,你可以理解为一段代码,这段代码在执行过程中不能被打断显式异步。Orleans编程模型使分布式应用程序的异步性质更加明确并指导程序员编写非阻塞异步代码。与异步消息传递和高效调度相结合这使得在没有显式使用多线程的情况下实现了大量的分布式并行性和总体吞吐量。原文地址:http://www.cnblogs.com/zd1994/p/8085679.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com
http://wiki.neutronadmin.com/news/113174/

相关文章:

  • 上海营销型网站建设平台思帽西宁网站建设
  • 南平市建设局网站企业网站建设方案价位
  • 泉州网站开发教育类网站框架
  • 婚纱摄影网站的设计与实现论文山西网站建设公司排名
  • asp.net 网站开发 异步沈阳建设电商网站
  • wordpress 无法下载主题WordPress搜索优化工具
  • 冠县住房和城乡建设局网站搭建购物网站
  • 湖州 网站建设济南网站制作搜到
  • 网站创建方案链接制作
  • 政务网站建设目的 意义wordpress改了固定链接
  • 电子商务网站与普通网站的区别重庆cms建站系统
  • 视频网站很难建设吗企业网站建设制作公司哪家好
  • 凡科网站设计模板宝应县住房和城乡建设局网站
  • 小型企业网站开发价格一般做企业网站需要什么资料
  • 制作网站需要wordpress中关村手机报价大全
  • 常用来做网站首业的是aspnet网站开发工具
  • 手机中国建设银行网站嘉兴网站快速排名优化
  • 公司网站建设如何摊销开发网站 数据库
  • 沈阳市网站制作一个企业网站需要多少钱
  • asp简单购物网站源码wordpress万网
  • 园林专业设计学习网站织梦古典网站模板
  • 如何制作一个单页网站公司做网站发生的费用分录
  • 网站备案类型物联网技术有哪些
  • 中兴路由器做网站网上给别人做网站
  • 网站制作流程论文公司门户最新版下载
  • 上海网站推广软件网站备案类型及条件
  • 手机行情网报价实时查询东莞企业网站排名优化
  • 兰州网站定制公司wordpress 有广告
  • 有哪些网站是拐角型乌兰察布市建设工程造价网站
  • 自己的网站群晖企业解决方案