日期:2022/04/03 07:56作者:佚名人气:
如何成长为一名建筑师
本文将从多方面阐述如何成为一名优秀的架构师,架构师应具备什么样的技术要求和专业素质。为了便于系统回顾,我在这里编制了一张脑图。
一、职责
在工作中架构师,你需要明确自己的定位,明确自己的工作范围和界限,才能更有效地开展工作。一般不限于以下几点:
确认要求。新增需求时,需要对需求进行拆解抽象,形成初步的大纲设计。
系统分解。针对复杂的需求,他能理清思路,冷静分析,将大需求拆解成小需求,明确每个小需求的边界范围。技术选择。对于技术的选择,我们需要考虑很多方面,比如系统复杂度和技术实现成本。不要以为选择最时尚和最新的技术就是为了体现自己的才华。最好的技术实现是结合公司的技术栈、运维能力、运营能力、硬件能力等。
制定技术规范。对于系统架构的实现,如果涉及复杂的技术组件,则需要编写详细的用户手册。另外,需要培养团队的技术栈,对开发和系统设计有明确的规范要求,可以根据设计模式和代码风格进行详细描述。
二、综合能力
1、沟通技巧
作为一名架构师,首先需要具备良好的沟通能力、团队协作能力和管理能力。良好的沟通往往可以事半功倍。沟通时需要考虑以下几点:
让我们谈论事物,而不是人。不要情绪化。降低您的个人资料并诚实地沟通。非暴力沟通,不对对方的观点和行为发表评论。学会倾听。
2、技术能力
优秀的技术能力是建筑师必不可少的基础。大方向上,归结为技术的沉淀和思考。小方面,熟悉编程语言基础、设计模式、分布式原理、组件原理等,在实际项目中可以合理使用。始终对技术敏感。
3、架构能力
架构师最重要的能力是架构能力,这也是架构师区别于普通程序员的价值。从需求分析、系统立项、系统开发、测试、上线、运维,到架构规划的各个环节都会进行测试。 、架构设计、架构升级这些能力。
4、抽象分析。
一个完全陌生的领域,分散的需求,如何将业务需求转化为技术需求,抽象分析能力是架构的基础。系统应用设计需要考虑领域模型的抽象、设计模式的应用以及需求可扩展性的实现。
5、决策技巧
一个需求通常有多种技术解决方案,哪一种更好更合适。这时候就需要根据自身需求、各种资源、线上方案来进行技术选型和技术决策。如果系统中有很多需求,则需要优先考虑需求,控制节奏架构师,控制全局。
三、架构优化升级
1、想法和目标
多思考如何提高平台响应、吞吐量、高性能、高可用性、高扩展性和减少耦合。
2、原则
在应用系统的设计和开发中,应始终考虑性能。
设定清晰明确的绩效目标是关键
性能调优伴随着整个项目周期。最好设定分段目标。达到预期的绩效目标后,可以总结和回顾这一阶段的工作。
必须保证调谐系统的稳定运行
性能更依赖于好的设计,调优是一种技术手段。
优化是一个渐进的过程。性能调优不能牺牲代码的可读性和可维护性,必须保证良好的设计。
3、手段
通过升级硬件,可以考虑CPU数量、固态硬盘、内存大小、DB存储等。
缓存,对于高吞吐量和数据库瓶颈,我们可以适当使用缓存来减少磁盘IO和延迟。
异步
很多同步交互功能是否可以用异步代替,一方面不阻塞用户行为,另一方面可以减轻系统负担。例如:通过消息队列实现异步处理,接口同步响应接受,异步通知最终状态。数据库优化级别
优化原则
数据库的纵向和横向拆分。当横向添加应用节点不能提高系统处理能力时,往往是数据库处理不了。分库分表的难点是:1、shard key选举。 2、业务需求跨表跨库查询(反范式设计,数据聚合SLAP)