为何说,MapReduce,颠覆了互联网分层架构的本质?
客户端层:典型调用方是浏览器browser或者手机APP 站点应用层:实现核心业务逻辑,从下游获取数据,对上游返回html或者json 服务层:业务服务,数据服务,基础服务,对上游提供友好的RPC接口 数据缓存层:缓存加速访问存储 数据固化层:数据库固化数据存储
view层:展现 control层:逻辑 model层:数据
db/service/web-server都部署在固定的集群上 端上,不管是browser还是APP,也有固定的CPU处理
跨进程的:数据从数据库和缓存里,转移到service层,到web-server层,到client层 同进程的:数据从model层,转移到control层,转移到view层
map服务层:接收输入数据,产出“分”的数据,集群部署M=1W个实例 reduce服务层:接受“合”的数据,产出终数据,集群部署R=1W个实例
总数据量大 吞吐量比较大,同时发起的请求多 每个请求,处理的数据相对比较小 用户对处理时延比较敏感
吞吐量比较小,同时发起的任务比较少 每个任务,处理的数据量非常大 用户对处理时延容忍性大
相关文章