本文转载自-方才coding的博客,原文链接:fangcaicoding.cn/course/18/9…
Hello 我是方才,后端研发leader、4年团队管理&架构经验。 文末,方才送你一份25年最新的架构师备考资料,记得领取哟!
信我!案例分析这样复习,就稳了!
这个复习路线,是方才在分析过所有历年的案例真题,并结合自己的考试经验和实战经验总结出来的。
不仅仅是覆盖了案例分析部分的高频考点,更是以实际的企业级架构为基线,构建了一个从上至下的知识体系。帮助大家通过理解性记忆,构建一个完整的知识体系,从而轻松拿下案例分析(ps:对论文专题部分也有极大的帮助)。
历年真题分析
软考架构师案例分析科目的考试模式是:1道必选+4选2(除了一道嵌入式的,也就是3选2了)。
我们先简单看下最近3次的考试真题(完整的考试真题请跳转:fangcaicoding.cn/papers):
方才这里就直接放考点分析的总结图了,直接看图很清晰:
其中系统质量属性、架构风格、UML图等等考点,在综合知识部分都有专题讲解,大家一定要理解和记忆,再结合历年的真题学习,我相信这些知识点是可以掌握的。
而数据库、缓存数据库、web应用架构部分,考点和实际工作相关性很大,而且根据参考往年的真题,会发现这部分的考题随机性是很大的:
- 可以考得很细,比如说redis zset的指令(24年5月的真题)、ES的分词器(24年11月真题);
- 也可以考架构和解决方案的能力,比如常见的web架构填空(这个就太多了)、读写分离架构(23年11月)、分布式锁(24年5月、);
- 还会考你的知识广度,比如各类数据库的特征,分别适用于哪类数据(24年5月真题)。
虽然不可预测,但依然有迹可循,一个复杂的分布式微服务架构几乎能覆盖以上所有考点。
所以整个案例分析部分的复习,方才将以一个脱敏后的企业级分布式微服务架构为例,串联所有的知识点,助大家轻松备考。
分布式架构为主线
我们先一起看看下面这个分布式微服务的架构图:
结合着另一种表达方式(分层描述):
学习思路
结合上面的两个架构图,我们从上至下,逐个学习对应的知识点,方才这里简单说明下学习思路:
- 从用户访问入口开始,涉及DNS解析、负载均衡技术、HTTPS/HTTP协议等等;
- 然后会来到安全网关,这里会涉及到接口限流技术、服务熔断、统一的身份认证等;
- 接下来流量进入到业务微服务集群,会涉及到微服务划分、服务治理、熔断和降级等等;
- 具体到某个应用服务,会涉及到层次架构、各种架构风格的应用、面向对象编程技术等等;
- 整个微服务应用,底层的数据存储,会涉及到不同类型的数据库,比如关系型数据库、文档数据库、时序数据库、图数据库、搜索引擎、对象存储服务等等;
- 同时数据存储,一般会使用缓存技术,涉及到缓存分级架构、缓存经典的问题:一致性、穿透、雪崩、预热等等问题;redis是其中的重点,就会涉及到redis本身的知识点,以及常用的技术方案,比如分布式锁、布隆过滤器等等;
- 当然,分布式环境离不开常用的分布式中间件,比如消息中间件、分布式事务中间件等等;
- 而在海量或者异构数据库的情况下,就会应用到大数据技术,比如离线数仓、数据湖、湖仓一体等等;
- 分布式环境下,各类组件和复杂的调用链路,就会涉及到可观测架构,包括日志可视化、分布式链路追踪、服务的监控和预警等等(devops的一部分);
- 复杂的技术架构一定伴随复杂的部署架构,就会使用的 k8s 做容器编排,基础设施自动化、自动伸缩等等;
- 在整个架构中,安全架构贯穿所有环节,物理安全、网络安全、应用安全、数据安全、安全管理等;
- ps:基于分布式微服务架构,进行适当的扩展和细节学习,能完全覆盖新八大架构中的微服务架构、面向服务的架构、云原生架构、大数据架构、安全架构、网络架构等相关内容。
这样将对应的知识点一串,大家是不是就有了一个清晰的知识体系了。
这也是方才建议的学习思路,一定要尝试建立知识体系,然后再慢慢基于核心体系去扩展和深挖细节,知识树就完整了,在考试或者日常工作中,遇到一些没接触过的技术,也可以尝试基于知识体系去类比理解。
后续计划
当然整个知识体系还是非常庞大的,其中涉及的技术和知识点也很多,甚至部分细节也需要适当深挖,或者做一些扩展,这对于没有3-5年后端经验的伙伴,是很吃力的。
但大家不用担心,后续方才会持续输出系列内容,告诉大家哪些了解即可,哪些需要理解,哪些需要掌握,同时会提供完整的资料。
ps:部分关键内容只提供给方才的架构陪跑服务会员,望大家理解下哈。不过公开的内容依然非常有价值,都是你在网上很难直接检索到的成体系的内容。
备考资料
相遇即是缘分,方才送你一份优质的架构师备考资料(都是方才自己用过的,真的能帮大家通过软考的资料)。
也可备注加群,方才拉你进入免费的软考架构师交流群(日常分享高质量的备考资料、实时资讯共享等)。