Fourinone简介,Fourinone是一种用于淘宝分布式并行计算的四合一框架

电脑杂谈  发布时间:2020-07-23 10:02:39  来源:网络整理

matlab分布式并行计算环境_淘宝分布式并行计算四合一框架fourinone_分布式并行计算系统

matlab分布式并行计算环境_分布式并行计算系统_淘宝分布式并行计算四合一框架fourinone

淘宝网分布式并行计算四合一框架Fourinone简介淘宝网Fourinone(中文名称为“四不像”)是一种四合一分布式计算框架. 在编写此框架之前,我考虑了很长时间的分布式计算. ,我还阅读了外国人编写的其他开源框架. 当我们学习复杂的hadoop作为一个主题时,我们似乎忘记了解决问题的初衷: 我们只想编写一个程序来组合多台或多台机器,将它们一起使用进行计算,并使用更多的cpu和内存来解决我们的问题. 大量复杂的计算. 当然,在此过程中必须考虑分布式协调和故障处理. 如果仅仅是为了实现这个简单的初衷,为什么一切都那么复杂?我想我可以写一个更简单的东西,它不需要过度设计,它只需要看起来更酷,更小,更强大. . 因此,考虑到底层实现技术的相似性,我将对分布式的理解合并到了该框架中,然后将Hadoop,Zookeeper,MQ和分布式缓存的四个主要分布式计算功能组合到一个框架中. 复杂的分布式计算应用程序经历了许多简化和归纳. 首先,对于分布式协作,它实现了Zookeeper的所有功能并进行了许多改进,包括简化Zookeeper的树结构,将其替换为域/节点两层结构,简化Watch回调多线程等待编程模式,并使用更加直观和容易的方式来确保业务逻辑内容更改事件和状态循环替换的完整性淘宝分布式并行计算四合一框架fourinone,Zookeeper只能存储不大于1M内容的信息,大于1M的Fourinone内容将存储在内存中的隐藏文件,增强Zookeeper的存储功能简化了Zookeeper的ACL权限功能被程序员更熟悉的rw风格所取代,从而简化了Zookeeper临时节点和序列节点的类型. 替换为是否指定在创建节点时是否保留心跳. 心跳中断时将自动删除该节点.

淘宝分布式并行计算四合一框架fourinone_分布式并行计算系统_matlab分布式并行计算环境

Fourinone的可用性很高,没有单点问题,可以有任意数量的副本,它的复制不是计划的,而是基于内容更改的,具有更高的性能. Fourinone实现了领导者选举算法(但不包括Paxos),当领导者服务器关闭时,请求将自动切换到备份服务器,而不会出现延迟,并且将选择一个新的领导者来服务. 在此过程中,心跳节点仍可以保持鲁棒的稳定性和速度. 与新的领导者保持心跳连接. 基于Fourinone,可以轻松实现协作功能,例如分布式配置信息,集群管理,故障节点检测,分布式锁和淘宝配置服务器. 其次,Fourinone可以提供完整的分布式缓存功能. 对于中小型Internet或企业应用程序,只需将域/节点用于k / v存储,因为域/节点都是内存操作,并且读写锁是分开的,并且具有副本备份,完全可以满足高速缓存的高性能和可靠性. 对于大型Internet应用程序,数百万次高峰访问的并发读写吞吐量将超过单个服务器的容量. Fourinone提供了一种外观解决方案,用于解决大型集群的分布式缓存并使用硬件负载平衡路由. 对于一组外观服务器,fafaade可以自动生成用于缓存内容的密钥,并准确找到分散的服务器根据密钥在缓存集群后面. 当缓存服务器的容量达到极限时,可以自由扩展. 不需要将容量增加一倍,因为fafade算法将注册服务器扩展时间版本,并智能地将密钥与此时间进行匹配,以便在扩展后可以准确找到先前分配的服务器.

分布式并行计算系统_淘宝分布式并行计算四合一框架fourinone_matlab分布式并行计算环境

此外,可以基于Fourinone轻松实现Web应用程序的会话功能,只需将生成的密钥写入客户端cookie. Fourinone的用于具有大量数据的分布式并行计算的解决方案不同于复杂的Hadoop. 不同于Hadoop的中间计算结果依赖hdfs,它使用不同于map / reduce的新设计模型来解决问题. Fourinone具有“承包商”,“移民工人”和“人工仓库”的几个核心概念. “民工”是一个可以部署在多台计算机上的计算节点. 它由开发人员免费实施. 计算时,“农民工”转到“手工仓库”获取输入资源,然后将计算结果返回“手工仓库”以返回给“承包商”. “承包商”负责将复杂项目的一部分承包,这可以理解为由开发人员自己实施的分发任务和计划程序,开发人员可以自由控制计划过程,例如划分源数据然后根据“移徙工人”的数量,将多少副本远程分发到“移徙工人”节点以进行计算和处理. 它所处理的中间结果数据不限于存储在hdfs中,还可以自由控制并存储在分布式缓存,和分布式文件中. 如果需要合并结果数据,则可以创建一个新的“承包商”任务分配来完成. 责任链在多个“承包商”之间处理. 通常,大数据的复杂分布式计算被设计成由多个“合同工”链接进行处理的链,每个链接包括使用多个“移民工”机器进行并行计算淘宝分布式并行计算四合一框架fourinone,无论是否拆分,计算任务和合并后的结果可以设计为单独的“合同工作”链接.

分布式并行计算系统_matlab分布式并行计算环境_淘宝分布式并行计算四合一框架fourinone

这样做的优点是,开发人员具有更大的能力来深度控制并行计算的过程,维护由并行计算实现的业务逻辑的完整性以及灵活地处理各种类型的并行计算方案. 由于某些特殊情况,这种想法不受map / reduce框架的限制,并且链中的每个链接也便于监视过程. Fourinone也可以用作简单的mq,将域视为mq队列,每个节点都是队列消息,并监视域的更改事件以获得队列消息. 该域也可以视为订阅主题,每个订阅者都在该域的节点上注册,发布者一个接一个地更新每个节点,订阅者监视每个节点的更改事件以获取订阅消息. 删除内容,然后等待下一条消息. 但是Fourinone没有实现JMS规范,并且不提供诸如JMS消息确认和消息过滤之类的特殊功能. 但是,开发人员可以基于Fourinone本身(包括mq集群)扩展这些功能,并使用独立的域/节点建立队列或主题密钥隐式,然后模仿上面的分布式缓存的智能,以基于密钥定位服务器. 实现集群管理. Fourinone的总体代码仅为70k,与诸如Hadoop,Zookeeper,Memcache,ActiveMq等开源产品的代码没有相似之处. 它不需要任何依赖关系. 它可以嵌入jar包中使用. 它很好地支持窗口环境,并且可以在一台机器上使用. 在其上模拟一个分布式环境,这对于开发更加方便.

该开发套件附带了一系列傻瓜动手演示,包括分布式计算,统一配置管理,集群管理,分布式锁,分布式缓存,MQ等. 每个演示都由几行代码控制. 但是它涵盖了Fourinone的主要功能,方便每个人快速理解和掌握. 该产品的开源工作已经提交,欢迎更多对分布式并行计算感兴趣的人加入. 电子邮件: Fourinone@yeah.net qq群: 1313859下载地址: 作者简介: Stone.Peng蝶的总体架构部门担任SOA架构师,负责设计ESB. 其他作品: BS Financial Invoicing: 下载链接: 网站生成软件: 下载链接:


本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-287956-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...