TPL:针对任务并行执行的横向扩展能力

Microsoft .NET Framework 4 中引入的任务并行库 (TPL) 能够让应用程序开发者创建解决方案, 以利用多核计算机中的并行处理能力。但是在许多情况下,垂直扩展的能力(添加多个核心)受到多种 因素的约束,包括成本和主机托管限制。在这种情况下,如果需要扩展能力,则可以将数据处理在服务 器阵列中分配;云托管就是这样的例子。在本文中,我将描述一套概念性解决方案的主要方面(包括实 施),通过使用 .NET Framework 4.5 的多项新功能完成上述情景。

基本前提条件

我将 要描述的方法要求使用除 TPL 以外的多种技术,包括:

任务并行库 (TPL)

Windows Communication Foundation (WCF)

托管可扩展性框架 (MEF)

请注意,我仅在我要试图解决的问题中讨论这些方面。我假设你非常了解这些技术。

远程任 务客户端、任务协调器及任务执行节点

远程任务客户端是客户端侧层,将隐藏由于使用分布式 环境的语义而产生的复杂性。远程任务客户端直接与任务协调器交互,然后协调器成为底层基础结构的 入口点。总体而言,任务协调器具有以下属性:

任务协调器是与客户端进行通讯的唯一联络点。

协调器公开必要的服务,以请求在可扩展的平台上执行任务,以及取消特定任务。

协调器处理任务执行请求的限制和队列,支持环境的健康操作。

任务执行节点是任务运行流程的主机。由 TPL 执行的任务的实际实施驻留在任务执行节点。

以下是这些逻辑层和主要方面及信息流:

远程任务客户端请求执行一项或多项任务。

任务协调器向任务执行节点提交请求。

任务执行节点执行任务并更新任务协调器中每项请求的状态。

任务协调器使用每项请求的执行结果,更新客户端。

任务执行节点驻留在负载平衡器的后面,因此可以按需要添加更多节点,从而能够实现水平扩展。

图 1 显示了逻辑层和信息流。

图 1 水平扩展任务

注意任务执行节点如何更新任务协调器,然后任务协调器更新远 程任务客户端。我将要描述一项基于客户端与任务协调器之间双向通讯的实施,以及基于任务协调器与 任务执行节点之间双向通讯的实施。根据 WCF 定义,这表示使用双工通道,使任务执行节点回调任务 协调器,然后任务协调器执行相同操作以更新客户端。我将展示使用 WebSockets 实现这种双向通讯方 法。WebSockets 传输是作为 .NET Framework 4.5 的一个新绑定来实施的,可在 Windows 8 上使用。 有关此绑定的详情,请访问 bit.ly/SOLNiU。

时间: 2024-10-21 11:32:34

TPL:针对任务并行执行的横向扩展能力的相关文章

Commvault发布横向扩展一体机 矛头对准Rubrik和Cohesity

Commvault将发布一款名为HyperScale的一体化设备,提供一个面向其数据保护和管理服务的横向扩展平台,针对来自Rubrik和Cohesity的竞品. Commvault首席执行官.董事会主席.总裁Bob Hammer表示,目前业界正在一致且持续地转向在企业数据中心内采用横向扩展的.类似云的基础设施,这将成为主导架构.一体化或者超融合一体机对于客户来说要比多平台组件更容易使用,因为云计算理念的普及,提供商将转移到服务层面基于结果的技术.   传统数据保护方法 HyperScale一体机

HDS推出针对大数据的新一代超融合横向扩展平台

HDS于近日推出新一代超融合横向扩展平台(HSP),原生集成Pentaho企业平台软件,针对大数据部署打造一流的软件定义超融合平台.HSP 400系列产品整合运算.存储及虚拟化能力,打造出无缝基础架构,支持大数据融合,内置业务分析,精简数据管理. 现代企业迫切需要从日益增长的海量数据中获取价值,包括信息技术(IT).运营技术(OT)和物联网(IoT)生成的大量数据,以及在这些环境下存在的众多机器生成的数据等.HSP提供了软件定义的架构,将这些超大数据集集中起来,便于存储和处理.这种架构拥有高可用

初创公司Elastifile提供为闪存而生的横向扩展存储软件

Elastifile即将发布一款横向扩展的文件存储系统,采用闪存并且覆盖私有云和公有云.   去年1月我们首次听说以色列公司Elastifile,当时这家公司在B轮融资中获得3500万美元.Elastifile开发的技术就像是让存储重生,当时我们是这样写的:"企业级的.Web级的存储软件运行采用全闪存介质,提供文件.对象和块存储访问协议.它的技术是硬件和虚拟机管理程序无关的--听起来像是一个近乎通用的存储库." 2016年6月思科向这家公司投入了一笔资金. 现在Elastifile已经

经济衰退时期的明智之举:横向扩展存储系统(1)

    一直以来,企业选用存储系统时,往往是随波逐流,别人用什么,自己也选择用什么.当然这种考虑也可以算作一种所谓"明智"的甄选存储系统的方式.但是在目前全球的经济危机持续之际,如何能从企业自身出发,选择更为适合IT环境的存储系统,同时又不会超出预算,才是企业真正的明智之举. 这里,Steve 将从基础设施成本和运营成本(参见该篇文章的第二部分)两方面出发,更为全面地论述NAS横向扩展(scale out)系统对比纵向扩展(scale-up)系统的优势.  Steve Duplessi

EMC为大数据解决方案包添加横向扩展计算选项

EMC公司和Pivotal今天发布数据湖Hadoop2.0包,面向客户的预测分析场景构建横向扩展数据湖,提供一种包含计算.分析和存储在内的交钥匙方案. 作为一种面向由传统和下一代工作负载产生的关键数据,可无限可扩展的知识库,数据湖正蓄势待发.EMC的横向扩展数据湖以企业级特性为设计之本,帮助组织从大数据中获得直接的商业价值. 今年早些时候,EMC和Pivotal发布了第一个数据湖Hadoop包-基于企业级横向扩展存储与企业级Hadoop预测分析的融合方案.数据湖Hadoop包2.0现已发布,包括

混合云部署中横向扩展NAS起关键作用

目前,世界上大多数的数据中心仍然使用垂直缩放的存储解决方案,这是一个困扰人们的问题.这种传统的存储方法在设计时并没有考虑到现在达到泽字节的庞大数据.企业以往任何时候需要存储更多的指数的数据,他们需要采用不损害性能的经济实惠的方式来进行.软件定义存储的出现使得横向扩展存储解决方案成为了现实. 如今出现的另一个相对较新的技术混合云,使组织折云架构具有最大的业务灵活性,这有助于在达到预算和性能目标的同时,最大限度地提高效率.简而言之,混合云是一个使用混合的内部部署,私有云和公共云服务的组合,以及业务流

横向扩展的NAS:在混合云中存储的关键

目前,世界上绝大部分的数据中心仍然在为其存储使用垂直扩展的解决方案,这显然是一个问题.这种传统的存储方法在其设计之初并没有考虑到今天泽字节的数据.现如今的企业组织机构需要比以往任何时候都存储更多的数据,而与此同时,他们还需要在不损害性能的前提下,以一种经济实惠的方式这样做.而软件定义的存储的出现使得横向扩展的存储解决方案成为了一种现实的可能. 另一项相对较新的技术:混合云,则能够使得企业组织机构享有云架构的最大的业务灵活性,这将有助于他们最大限度地提高预算效率和性能目标.简而言之,混合云是一款实

横向扩展的NAS:混合云存储的关键

目前,世界上大多数的数据中心仍然使用垂直缩放的存储解决方案,这是一个困扰人们的问题.这种传统的存储方法在设计时并没有考虑到现在达到泽字节的庞大数据.企业以往任何时候需要存储更多的指数的数据,他们需要采用不损害性能的经济实惠的方式来进行.软件定义存储的出现使得横向扩展存储解决方案成为了现实. 如今出现的另一个相对较新的技术混合云,使组织折云架构具有最大的业务灵活性,这有助于在达到预算和性能目标的同时,最大限度地提高效率.简而言之,混合云是一个使用混合的内部部署,私有云和公共云服务的组合,以及业务流

横向扩展存储方案的设计原则

随着 大量数据http://www.aliyun.com/zixun/aggregation/13739.html">非结构化数据的迅建飙升,数据的存储.收集.分析和处理等都面临着新的挑战,传统的垂直扩展存储已经难以经济的应对目前数据存储的需求,而横向扩展存储则以高性能/高吞吐量.高可靠性/高可用性.高可扩展性. 低成本.低TCO等特点脱颖而出,经济高效地 摆脱纵向扩展的局限.为了豫,为了实现横向扩展存储解决方案的最优化,构架时应 遵循以下 几点原则:   1.可适应不同规模的数据存储