learn-tech/专栏/分布式技术原理与实战45讲-完/52分布式路漫漫,厚积薄发才是王道.md
2024-10-16 06:37:41 +08:00

47 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

因收到Google相关通知网站将会择期关闭。相关通知内容
52 分布式路漫漫,厚积薄发才是王道
你好,到这里专栏的学习已经进入尾声了,这一课时我们一起来梳理一下整个课程的内容。
广义的分布式系统是个非常宽泛的领域,涉及的技术栈有很多,而且有很多理论性的知识点,比如各类一致性算法、各种数据一致性模型。如果深入到某个技术栈,比如分布式存储或者分布式协同技术,那么各种细节的理论知识就更加庞杂了。
分布式技术的学习是有难度的,而且在面试时对候选人的区分度比较高,也是后端面试中的常客。在专栏内容的设计上,我是从一个一线开发者的角色出发,设计专栏目录和章节编排,可以说,专栏大纲本身就是一份学习提纲。
课程回顾
在“模块一:分布式基础”中,我们先从分布式理论的基础入手,首先了解了基础的 CAP 理论,然后是不同的数据一致性模型,经典的数据一致性算法 Paoxos、ZooKeeper 如何实现一致性,最后从区块链的角度入手,和你分享了数字货币中的共识问题,这一模块是学习分布式系统的理论基础,不需要死记硬背,深入理解才是第一位。
在“模块二:分布式事务”中,讨论了两阶段和三阶段提交协议,数据库的 XA 规范,实现分布式事务的 TCC 模型,最后通过两小节的内容,分析了 Redis 实现分布式锁相关的内容。数据一致性和分布式事务是互联网分布式系统设计中必须要考虑的,这部分要重点把握。
在“模块三:分布式服务”中,我和你一起从 RPC 远程服务入手,一起分析了服务网关、服务注册与发现、调用连跟踪、容器化调度、配置管理等微服务技术热点,并且了解了 ServiceMesh 等最新的技术热点。这一模块是大部分工程师在实际开发中应用最多的,也要重点去学习和理解。
在“模块四:分布式存储”中,我们一起探讨了分布式下关系型数据库的适配,这一部分在工作中也经常用到,包括分库分表、读写分离,还介绍了 NoSQL 数据库和 Elasticsearch 在开发中的应用。
在“模块五:消息队列”中,我从消息队列的应用场景入手,讲解了重复消费、消息幂等、时序性等热点问题,另外还对 Kafka 和 RokcetMQ 这两大技术组件进行了分析。希望你在使用消息队列时,也可以从这几个角度去思考系统设计的细节。
在“模块六:分布式缓存”中,我分享了缓存在分布式场景下的热点应用问题,包括缓存穿透、失效、雪崩的处理、缓存的负载均衡和高可用知识。在实际工作中,缓存的重要性不言而喻,这部分你也要重点掌握。
在“模块七:分布式高可用”中,我从双十一大促的场景入手,分享了系统限流、降级和熔断、负载均衡、稳定性指标,以及监控组件和统一日志系统等热门知识点。
为了帮助你更好地准备面试,我在每个模块后面,还单独添加了高频面试知识点梳理的加餐环节,如果你最近在准备面试,可以重点关注一下加餐部分。
未来展望
我曾经发起过一个有书共读活动,最开始报名的有一百多人,但是最终坚持到最后的只有不到 10 个人。在专栏的学习上也一样,如果你能坚持学习完全部的课程内容,那我相信,你一定会有很大的提高,对分布式和系统架构有一个新的认识。
我一直认为,授人以鱼不如授人以渔,在进行专栏讲解的时候,一直都是结合工作场景中的实际问题来分析,希望你在学习的时候,也可以结合自己的实际工作去展开,厚积薄发、不断提高。
特别感谢拉勾的专栏编辑,在整个课程中一直持续跟进,每一课时的内容完成以后,都会进行编辑和审查,提出了非常好的想法和建议,一起打磨出了本专栏的内容。
总结
分布式系统的学习是一个长期的过程,不可能毕其功于一役,这个专栏希望可以帮助你构建一个分布式知识的体系,有了这个知识的骨架之后,你就可以在自己的学习和工作中进行填充和润色,最终形成自己的一套知识体系。
雄关漫道真如铁,而今迈步从头越,希望专栏的每一位读者学习愉快,工作和生活顺利。