漫画:什么是架构师?

简介: 说到这里,也给大家推荐一个架构交流学习群:614478470,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。
img_d47f7b233e117858184238590fb4b99b.jpe
img_c41b6e48d868b0521f8f90471ab5b0a7.jpe
img_36fd1907a079c1843ee473ab64dae963.jpe
img_2d822eb710fcf5ed241513ba4453f8e5.jpe
img_5e68ecb475a1827e88737ff53c4b5c12.jpe
img_f0aa141bf4c110a9fab52719f7476e6f.jpe

说到这里,也给大家推荐一个架构交流学习群:614478470,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,相信对于已经工作和遇到技术瓶颈的码友,在这个群里会有你需要的内容。

于是,小灰去向大黄请教

img_030a703f85ebaf08f82687da9a6cd0f3.jpe
img_17e6276d15b3ed75740de8c89a551688.jpe

这是有关未来的故事:

从前,有一个赶路的人路过一片工地,看到三个年轻人在工地上搬砖。

于是,他问其中一个人:

img_365be3044335c9c474a60d2ca7c9e17d.jpe
img_34ad40595d6f1f92f70c2b269db58912.jpe

于是,他又问了第二个人:

img_75fe4fc55fea87b64e779f516d2c237c.jpe
img_a13da183f1a057fde0d086c32ab46b7d.jpe

于是,他又问了第三个人:

img_92ed158fa8dd3ad95d31fabac445d8f1.jpe

img_027af367c92b26eed4b203ef8c486b74.jpe

十年之后~

曾经说自己在建造城市的年轻人,成为了市长

img_b207c62892c6ea5d24fab3e1061b513b.jpe

这里推荐一下我的JAVA架构学习交流群:614478470 ,想要学习Java高架构、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师视频都有整理,送给每一位JAVA小伙伴,有想学习JAVA架构的,或是转行,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。

曾经说自己在搬砖的年轻人,成为了砖厂老板

img_3d6324046c8c37e1bf56eb5baf4688b2.jpe

曾经说自己在搭建教堂的年轻人,最没出息,成为了架构师

img_9d948bf73c1a134a12b86254bd4c2505.jpe
img_9e7715db81748c3d77cfd17271dd63d6.jpe

什么是架构师?

架构师英文architect,这个词源于建筑学。软件工程当中的架构师和建筑工程当中建筑师有许多相通之处,都是负责“产品”宏观的架构设计。

在一个团队里,架构师充当了技术Leader的角色,不仅要完成项目的整体设计和规划,还要带领技术团队一起解决实际问题,攻克技术难点,使得软件的设计、开发、测试、发布流程得以顺利完成。

下面这张图,表达了一个应用架构师(技术Leader)在团队当中的角色:

img_7d7fa92ae5df1ca9da8e0814b038b261.jpe

需要注意的是,这张图中的架构师只是应用架构师,所以运维和DBA人员没有归入到他的管辖范围。同时,每个公司的具体组织结构也不尽相同。

img_5df01da135d1a55793fe173689d3d45e.jpe
img_1a328a3415e4f84ff85ac6b290fdc0f2.jpe

架构师都做些什么?

1.架构设计

架构师,顾名思义,第一职责就是在软件设计阶段,做好软件“骨架”的设计。架构师需要把产品的需求翻译成软件工程的设计文档,确定各个系统与模块的边界,评估系统的量级。

2.技术选型

从前端到后端,从缓存到数据库,面对为数众多的第三方组件,架构师需要作出合理的选择。

前端页面选择模板引擎还是动静分离?

服务端选择Java还是Node.js?

服务治理选择DubboX还是Spring Cloud?

消息队列选择RocketMQ还是Kafka?

分布式缓存选择Redis Cluster 还是 Codis?

数据库选择Mysql还是Oracle?

全文检索选择Solr还是ES?

技术没有绝对的好坏之分,关键看是否适用于公司的业务场景。

3.管理非功能性需求

满足需求是项目开发和架构设计的根本,而管理非功能性需求则是项目的升华。

在公司从0到1的创业阶段,开发者更关注的是功能性需求,往往一个简单粗暴的MVC项目就可以搞定一切。当业务量级逐渐增大,用户需求逐渐多样化,非功能性需求的重要性就逐渐显现。 

非功能性需求都包含哪些内容呢?

性能(响应时间) 

可扩展性(适应需求的快速变化)

可用性 (四个9,五个9,必要时的限流和降级)

安全性(防范各种恶意攻击,实现风控)

可监控(完善的监控和报警机制)

灵活性(便于非开发人员进行配置) 

可维护(持续集成,持续部署) 

国际化(冲出国门)

4.攻克技术难题

架构师不只需要关注宏观的设计,也需要具有攻克技术细节的能力。在团队开发过程中遇到难以实现和优化的技术问题时,架构师需要发挥技术优势,解决系统的疑难杂症。

5.技术人员的管理和指导

架构师不只是一个技术大牛,也应该是一个好的管理者,在工作中需要把较大的项目和需求拆分一个个Story,依照每个人的情况分配给研发团队的成员,并且在必要的时候进行技术上的培训指导。

img_52f9da2ae8fc1ca0f7c9f7cdc79f66ed.jpe
img_31cea6496524b5d718b232751b9769dd.jpe

架构师都有哪些种类?

1.应用架构师

应用架构师是行业中数量最多的架构师,主要负责公司产品的技术架构。产品架构师需要对业务有足够的理解,根据产品需求设计架构,在运营团队的协助下评估量级,并管理项目的整个生命周期。

2.中间件架构师

中间件架构师主要负责基础框架、公共组件,通用服务的搭建。比如分布式服务框架诸如Dubbo,HSF;比如消息队列诸如 RocketMQ,Kafka。在大型互联网公司中,往往不是把开源框架简单“拿来”,而是研发出符合自身业务的企业中间件。

3.基础设施架构师

基础设施架构师负责服务器资源、网络资源、数据库等基础设施的建设;以及持续集成工具、持续部署工具的搭建。

以上所说的三种,只是架构师最基本的分类。一些特殊领域也有着专门的架构师,比如网络安全架构师、大数据架构师等等。

img_b7252142d6bf7cf5f32114d4a82b7351.jpe

img_4b33ca9d74b319ebf3461f700ca12024.jpe

怎样才能成为架构师?

1.技术的深度和广度

有一句话说得好,将军就是更优秀的士兵。架构师作为程序员中的将军,首先需要有足够的技术深度,同时需要广泛了解行业内的主流技术,以便更好地设计架构和技术选型。

2.业务的理解

抛开业务谈架构就是耍流氓。这一点对应用架构师来说尤其重要。只有对业务有了充分的理解,才能对项目的设计和扩展做出合理的规划。

3.良好的沟通能力

架构师不只是低头做技术,更需要协调指挥团队内的成员,也需要跨部门和产品、运营、项目经理等人员做及时有效的沟通,所以沟通能力是必不可少的。

img_dce5403335fea7f2c6bdc1011ca8e2ba.jpe
img_c7347685ff1f447eb5c11a9fe5ecc29a.jpe

想要学习Java高架构、分布式架构、高可扩展、高性能、高并发、性能优化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分布式项目实战学习架构师视频免费获取 架构群:614478470

点击链接加入群聊【JAVA高级架构】:https://jq.qq.com/?_wv=1027&k=5gMDouY

相关文章
|
29天前
|
敏捷开发 安全 API
C/C++ 工程师面试:如何精彩展示你的项目经验并获得高分
C/C++ 工程师面试:如何精彩展示你的项目经验并获得高分
73 0
|
7月前
|
传感器 安全 物联网
聊一聊V2X,我眼中的V2X
聊一聊V2X,我眼中的V2X
|
9月前
|
运维 算法 架构师
又爆新作!阿里甩出架构师进阶必备神仙笔记,底层知识全梳理
据有关数据表明,目前Java程序员这个群体的数量不减反增,行业内的竞争也是越来越严重。在同一时间入行的人,经过一段时间的学习后,差距就会显示出来。其实出现这样的原因大多数都是因为学习的方向出了问题。大多数人学Java刚开始只是为了快速就业,但是在工作了之后却没有一个好的学习路线,那些其实很重要的东西只是因为工作上用不到从而忽略掉了,慢慢的才发现自己与别人之间已经存在很大差距了!
|
前端开发 开发者
开发者眼中的优秀产品经理是哪样?
本人作为一名开发人员,可以说打交道最多的就是产品和测试,尤其是新需求出来的时候,开需求讨论会,产品和一线开发人员在会讨论的交锋,很值得思考。那么接下来就来聊聊为什么会出现这种情况。
138 1
开发者眼中的优秀产品经理是哪样?
|
消息中间件 监控 架构师
漫画:什么是架构师?
架构师英文architect,这个词源于建筑学。软件工程当中的架构师和建筑工程当中建筑师有许多相通之处,都是负责“产品”宏观的架构设计。 在一个团队里,架构师充当了技术Leader的角色,不仅要完成项目的整体设计和规划,还要带领技术团队一起解决实际问题,攻克技术难点,使得软件的设计、开发、测试、发布流程得以顺利完成。
214 0
漫画:什么是架构师?
|
运维 架构师 算法
空杯、好奇、实践...想当架构师的你应该读读这篇文章
  空杯、好奇、实践...想当架构师的你应该读读这篇文章什么是架构师?   随便打开某招聘网站:系统架构师、搜索架构师、前端架构师、iOS/Android架构师、平台架构师、(大)数据架构师、JAVA/PHP/.NET架构师、高级架构师、资深架构师、BI架构师,这些是大家常见的,君不见还有后台架构师、MIS/ERP/OA系统架构师、金融系统架构师、搜索架构师、总线架构师、运维架构师,安全架构师......林林总总,不一而足。   仅仅是上面这些岗位名称,就能看到架构师岗位的差异之大,方向不同、技术栈不同、行业不同,即便同一个岗位,水平差距也是天壤之别,如果仅以架构师一个称谓来描述,显然是不
113 0
|
架构师 Java 大数据
漫画:程序员小赵的架构师之路
《架构师小赵的故事》原文作者刘欣先生,工作15年的前IBM架构师。 原文地址:http://m.sohu.com/n/473759776/ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ ​ 至此,架构师小赵的故事就暂告一段落了。
|
程序员 UED 内存技术
【聚能聊有奖话题】你有经历过程序员与美工的撕逼大战吗?
就像猫和狗、该隐和亚伯一样,程序员和美工也是对死对头。程序员和美工就像来自不同星球的两种完全不同的人,他们脑袋所关心的事情也完全不同。 程序员希望网站运行起来高效无BUG,而美工希望网站看起来漂亮。
1650 0