快速完美复刻阿里巴巴大型分布式系统架构

时至今日,架构的演变过程早已从单体架构过渡到大型的分布式架构,本篇的内容就是教会大家复刻阿里巴巴的大型分布式架构,废话不多说,直接进入正文,本篇将会通过五个部分为打击进行讲解学习。

演进中的架构

架构师的视角

远程服务调用(Remote Procedure Call,RPC)在计算机科学中已经存在超过四十年时间,但在今天仍然可以在各种论坛、技术网站上遇见“什么是 RPC”“如何评价某某 RPC 技术”“RPC 更好还是 REST 更好”之类的问题,仍然有新的不同形状的 RPC 轮子被发明制造出来,仍然有层出不穷的文章去比对 Google gRPC、Facebook Thrift 等各家的 RPC 组件库的优劣。

分布式的基石

在正式探讨分布式环境中面临的各种技术问题和解决方案前,我们先把目光从工业界转到学术界,学习几种具有代表性的分布式共识算法,为后续在分布式环境中操作共享数据准备好理论基础。下面笔者从一个最浅显的场景开始,引出本章的主题:

如果你有一份很重要的数据,要确保它长期存储在电脑上不会丢失,你会怎么做?

不可变的基础设施

容器是云计算、微服务等诸多软件行业核心技术的共同基石。容器的首要目标是软件分发部署过程从传统的发布安装包、靠人工部署转变为直接发布已经部署好的、包含整套运行环境的虚拟化镜像。在容器技术成熟之前,主流的软件部署过程是由系统管理员编译或下载好二进制安装包,根据软件的部署说明文档准备好正确的操作系统、第三方库、配置文件、资源权限等各种前置依赖以后,才能将程序正确地运行起来。Chad Fowler 在提出“不可变基础设施”这个概念的文章“Trash Your Servers and Burn Your Code” [1] 的开篇就直接吐槽:要把一个不知道打过多少个升级补丁、不知道经历了多少任管理员的系统迁移到其他机器上,毫无疑问会是一场灾难。

技术方法论

最后的最后需要领取这份 PDF 版 Kind 版的同学麻烦帮忙点赞+关注我后 直接添加小助理


版权声明:本文为gu1857035894原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。