我对分布式计算框架的理解与设计
谢谢大家来看这篇文章,我想花点时间分享一下我对分布式计算的理解。
分布式服务有很多,比如hbase, hadoop, spark等,我所要讲述的重点不是这些服务的原理,而是用更浅显的话讲述更深刻的设计。
如何把多个的机器组合起来完成一件简单的计算任务,所以这方面的架构设计更多的关注服务器间的关系。
下面我们来设计一个框架,以进行简单的分布式计算。
我们假设计算目标有三类:
1.分布计算能力,简单多节点计算, 计算1万以内的质数。
2.map-reduce,以wordcount为例。
3.资源查询,分布式查询数据库
模块设计
在架构上, 可以将服务中的服务器分三个模块:
| 模块 | 含义 |
|---|---|
| config | 配置服务 |
| server | 对外接口服务 |
| service | 工作服务(worker) |
我想让service接受请求,server进行计算, 流程会是怎么的呢。
流程设计
一条简单的请求
