三百行python代码的项目_使用300行代码创建一个分布式系统

使用

300

行代码创建一个分布式系统

构建一个分布式系统是很困难的。

它需要可扩展性、

容错性、

高可用性、

一致性、

可伸缩以及高效。为了达到这些目的,分布式系统需要很多复杂的组件以一

复杂的方式协同工作。例如,

Apache

Hadoop

在大型集群上并行处理

TB

级别的

数据集时,需要依赖有着高容错的文件系统(

HDFS

)来达到高吞

吐量。

在之前,每一个新的分布式系统,例如

Hadoop

Cassandra

,都需要构建自己

的底层架构,包括消息处理、存储、网络、容错性和可伸缩性。

庆幸的是,像

Apache

Mesos

这样的系统,

通过给分布式系统的关键构建模块提供类似操作系

统的管理服务,

简化了构建和管理分布式系统的任务。

Mesos

抽离了

CPU

存储

和其它计算资源,

因此开发者开发分布式应用程序时能够将整个数据中心集群当

做一台巨型机对待。

构建在

Mesos

上的应用程序被称为框架,

它们能解决很多问题:

Apache

Spark

一种流行的集群式数据分析工具;

Chronos

,一个类

cron

的具有容错性的分

布式

scheduler

,这是两个构建在

Mesos

上的框架的例子。构建框架可以使用多

种语言,包括

C++

Go

Python

Java

Haskell

Scala

在分布式系统用例上,比特币开采就是一个很好的例子。比特币将为生

acceptable

hash

的挑战转为验证一块事务的可靠性。

可能需要

几十年,

单台笔记本电脑挖一块可能需要花费超过

150

年。结果是,有许多的“采矿池”

允许采矿者将他们的计算资源联合起来以加快挖矿速度。

Mesosphere

的一个实

习生,

Derek

写了一个

比特币开采框架

利用集群资源的优势来做同样的事情。

在接下来的内容中,会以他的代码为例。

1

Mesos

框架有

1

scheduler

1

executor

组成。

scheduler

Mesos

master

通信并决定运行什么任

务,而

executor

运行在

slaves

上面,

执行实际任务。大多数的框架实现了自己的

scheduler

,并使用

1

个由

Mesos

供的标准

executors

。当然,框架也可以自己定制

executor

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值