架构师训练营 - 第六章总结

发布于: 2020 年 07 月 14 日

学习内容

从上周开始,学习内容的高度有了不小的提升,主要内容都是在讲分布式系统的难点和实现案例。

系统发展到一定阶段,数据量、请求量达到足够的量级,无法再通过单机的方式存储,那么就必须寻求分布式的解决方案。

分布式系统一般有分布式应用系统、分布式缓存、分布式存储。

分布式应用服务

分布式应用服务相对简单,多个server服务器负载均衡服务给客户提供服务,一般server都是无状态的,方便server的线性扩展。

分布式应用解决大访问量时,单机应用系统处理能力不足的问题。

分布式应用当中的难点在于负载均衡算法,怎么能把用户请求均匀的分配给应用服务器,在应用服务器出现故障时,及时剔除等。

分布式缓存

分布式缓存是解决缓存数据达到一定量级,单机服务无法承载的问题。

分布式缓存相对分布式存储容易处理些,主要是因为缓存数据允许一定的丢失,只要不出现大规模的缓存穿透或缓存雪崩,系统基本都能接收。

分布式缓存主要的难点在于分布式一致性算法,如何将数据均匀的分配到各个存储节点,并且在系统扩缩容时可以继续保持这种均衡性。

分布式存储

分布式存储的难度还是比较高的,它主要解决海量数据存储的问题。

分布式存储的难点主要体现在,数据的完整性要求高,体积巨大,扩缩绒困难,可用性要求高。

分布式存储的难点除了分布式一致性算法,数据均衡存储外,还有系统扩缩绒时的数据迁移和数据恢复。

总结下来,分布式系统的难度还是比较高的。除了上面提到的几个点,还要应对网络延迟、系统故障、数据版本等各种问题。

不过技术人所追求的也就是这些问题的更好答案,市面上的mycat、redis cluster,以及最近出现的tidb,都在解决这类问题,相信以后的技术圈内还能产生更多更好的解决方案。

用户头像

而立

关注

还未添加个人签名 2018.01.25 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营-第六章总结