如何通过Mesos、Docker和Go,使用300行代码创建一个分布式系统?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

如何通过Mesos、Docker和Go,使用300行代码创建一个分布式系统?

2021-09-30 19:28:34 195 1

如何通过Mesos、Docker和Go,使用300行代码创建一个分布式系统?

取消 提交回答
全部回答(1)
  • 游客gba6jdyehhlh6
    2021-09-30 20:30:10

    在之前,每一个新的分布式系统,例如 Hadoop 和 Cassandra ,都需要构建自己的底层架构,包括消息处理、存储、网络、容错性和可伸缩性。庆幸的是,像 Apache Mesos 这样的系统,通过给分布式系统的关键构建模块提供类似操作系统的管理服务,简化了构建和管理分布式系统的任务。Mesos 抽离了 CPU 、存储和其它计算资源,因此开发者开发分布式应用程序时能够将整个数据中心集群当做一台巨型机对待。

    构建在 Mesos 上的应用程序被称为框架,它们能解决很多问题: Apache Spark,一种流行的集群式数据分析工具;Chronos ,一个类似 cron 的具有容错性的分布式 scheduler ,这是两个构建在 Mesos 上的框架的例子。构建框架可以使用多种语言,包括 C++,Go,Python,Java,Haskell 和 Scala。

    在分布式系统用例上,比特币开采就是一个很好的例子。比特币将为生成 acceptable hash 的挑战转为验证一块事务的可靠性。可能需要几十年,单台笔记本电脑挖一块可能需要花费超过 150 年。结果是,有许多的“采矿池”允许采矿者将他们的计算资源联合起来以加快挖矿速度。Mesosphere 的一个实习生, Derek ,写了一个比特币开采框架(https://github.com/derekchiang/Mesos-Bitcoin-Miner),利用集群资源的优势来做同样的事情。在接下来的内容中,会以他的代码为例。

    1 个 Mesos 框架有 1 个 scheduler 和 1 个 executor 组成。scheduler 和 Mesos master 通信并决定运行什么任务,而 executor 运行在 slaves 上面,执行实际任务。大多数的框架实现了自己的 scheduler,并使用 1 个由 Mesos 提供的标准 executors 。当然,框架也可以自己定制 executor 。在这个例子中即会编写定制的 scheduler,并使用标准命令执行器( executor )运行包含我们比特币服务的 Docker 镜像。

    对这里的 scheduler 来说,需要运行的有两种任务—— one miner server task and multiple miner worker tasks。 server 会和一个比特币采矿池通信,并给每个 worker 分配 blocks 。Worker 会努力工作,即开采比特币。

    0 0
相关问答

17

回答

【精品问答】Java技术1000问(1)

问问小秘 2019-11-15 11:24:15 53872浏览量 回答数 17

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 226266浏览量 回答数 162

13

回答

阿里云支持docker吗?

antaeus 2014-02-21 14:50:49 43872浏览量 回答数 13

1

回答

2020年阿里、字节:一套高效的iOS面试题(二)

montos 2020-04-13 15:08:17 36349浏览量 回答数 1

56

回答

基于Java容器的多应用部署技术实践【精品问答集锦】

管理贝贝 2016-07-25 18:07:23 61436浏览量 回答数 56

3

回答

对症下药:Tomcat停机过程分析与线程处理方法

驻云科技 2018-01-29 15:18:53 44957浏览量 回答数 3

20

回答

【Java学习全家桶】1460道Java热门问题,阿里百位技术专家答疑解惑

管理贝贝 2018-05-31 13:57:45 46090浏览量 回答数 20

11

回答

【精品问答合集】MongoDB热门问答

李博 bluemind 2019-05-29 16:50:19 121390浏览量 回答数 11

16

回答

Linux系统常用命令大全

2013-05-16 11:07:26 44211浏览量 回答数 16

13

回答

【精品问答合集】Java热门问答

李博 bluemind 2019-05-29 16:00:45 125733浏览量 回答数 13
0
文章
13
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载