手记

一篇文章了解架构师的核心技能


要想成为一名合格,甚至优秀的架构师,你至少需要懂得抓住架构师的核心技能,学会抓住架构设计的本质,这就是架构之道,比架构之术重要的多。

本文作者 陈睿 优知学院创始人,历任淘宝高级软件工程师、盛大架构师、百度研发经理、携程定制旅游CTO,分享职场、架构、CTO进阶经验和心得


架构之道


我发现现在大家很难说清楚架构师的核心技能是什么,如何客观的来准确定义架构设计,什么样的架构师才是你学习和借鉴的方向,今天我来开启这个话题。

首先,这里我把架构师这个职位划分为如下三类:

1 技术型架构师

这一类大家接触到最多,大家的理解就是技术专家、技术大牛,解决公司的技术难题、架构设计,甚至都不需要了解业务。

2 业务型架构师

精通业务但不一定懂技术,部分公司不一定有业务架构师这个title,也许是类似BD这样的称呼,但都需要精通业务。

怎么来定义精通业务?

具有典型的行业属性特征,比如是电子商业领域的专家、在线旅游行业的专家、零售行业的专家、医美行业的专家...,对某一行业有非常深入的了解,熟悉该行业的特征,熟悉业务流程,以及该行业面临的挑战等。

3 技术和业务结合型架构师

技术和业务的两者的集合,同时都需要精通,这样的人往往在公司我们统称为“首席架构师

我们工作中接触到大部分都是偏技术型的架构师,解决技术难题为主,以下我谈到的所谓“架构师”这个称谓,特指技术型架构师,技术专家。

架构师的核心技能

架构师,一般公司相关的技术选型和架构设计由其来承担和负责,工作中遇到了搞不定的技术问题,或者公司遇见的技术瓶颈,找架构师解决。

例如,10年前早期采用windows体系:windows、IIS、SQL-Sever、C# ,随着公司的发展,业务百倍、千倍的发展,流量越来越大,当流量超过一千多万时,面对性能和成本这些不可控的因素,进行了业务拆分和性能优化,但是依然解决不了问题,痛定思痛于是决定转型:将整个 windows 技术体系转向java 体系,对应的技术方案是什么,技术演变的关键点在哪里,以及在不影响业务为前提下,按照什么样的步骤来推进技术演变?

这就会涉及到架构师的核心技能,如何设计一套高可用的架构来支撑千万、亿级的访问技能:

目前我已知的几家大公司,正在经历.net到java的演变阵痛,懂得关键节点怎样演变的人在这个市场非常稀少。

再例如淘宝最早期典型LAMP结构快速上线,随着业务的发展,很早就迁移到java体系,随着业务的爆炸性发展,业务从百万级到千万级再到亿级的用户发展,在java体系下如何一步步推进的技术架构演变:淘宝发展历程最具决定性的一次技术架构演变

再例如,随着业务的快速发展,需要更多用户设计场景:双11的挑战,秒杀系统,短期的时间涌入大量的用户都以亿级用户单位,技术怎样支撑这个业务场景,需要做哪些方面的技术储备?

再例如当公司越来越依重与技术的时候,公司不能接受1个小时的宕机,甚至1分钟也接受不了的情况,这些技术挑战将都需要架构师去解决,这就是牵涉到一套可容灾的安全可靠的架构设计。

架构设计场景


上海外滩的环球金融中心楼高492米,如果你想建造一座492米的高楼,这一定于平时我们建几楼、十几楼的打地基以及材料有完全不懂的方法,这里的地址和材质,以及对应的设计方法决定了之后你想建造楼房的高度。

同理,当你的网站需要承受千万、亿级的访问的时候,这就涉及到网站的基础设施需要怎样搭建才能支撑这样的高楼建设。

我们都说架构是演变而来的,但我想说的是不管架构怎样演变,但架构设计的本质和建筑设计的本质往往都是想通的。



1人推荐
随时随地看视频
慕课网APP