热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

系统架构师和软件架构师_我眼中的解决方案架构师

导读:一位阿里云解决方案架构师的自述。作者|陈兵何为架构师我是在2018年加入阿里云,最开始是做一名软件开发工程师。那个时候,我经常和晓龙
222f03e46aeb891cafdc66e70b6d361d.png

导读:一位阿里云解决方案架构师的自述。

作者 | 陈兵

何为架构师

我是在 2018 年加入阿里云,最开始是做一名软件开发工程师。那个时候,我经常和晓龙聚在一起探讨键盘的排列组合、语言的孰优孰劣、各种格子衫的穿法。当有一天龙哥发现我的 Title(岗位头衔)变成了架构师之后,对我的态度骤然冷淡起来,每次我满怀热情地去和他讨论问题,他总是对我却爱理不理。终于有一天我忍不住去拉住从对面走来却假装望天的龙哥这是为什么?原来龙哥觉得我键盘敲得没有他响,快捷键记得没有他全,竟然连 emacs 都不喜欢,只是因为“脱口秀”说得好就成为了架构师,简直太没有天理了。

架构师这个岗位在软件工程师来看是一个很神圣的岗位,也是众多开发人员努力的目标,大家都在幻想有一天全局由自己来把控,整体由自己来设计,做出好作品的召唤是每个开发人员的动力。但就像好作品可以分为许多种类一样,架构师同样也可以分为很多种类。

例如 Gartner 对架构师的分类会从商业、信息和技术(Business, Information and Technical)等维度出发,涉及到的角色是我们常见的,如企业架构师(Enterprise Architect)、解决方案架构师(Solution Architect)。同样也有按照功能分类来定义架构师的角色,从技术角度来看涉及到我们常见熟知的岗位:系统架构师(System Architect)、软件架构师(Software Architect)、数据架构师(Data Architect)、安全架构师(Security Architect)、交付架构师(Delivery Architect)等等。

面对不同客户的真实需求中,其实架构师之间是可以协同合作的,在不同阶段发挥着不同的作用。

《水浒传》中智取生辰纲的桥段很好地展示了不同架构师角色在一个项目中的作用:杨志烈日下带队押送生辰纲经过太行山黄泥岗被晁盖、吴用等人用蒙汉药酒懵倒,晁盖等七人毫发无损地完成了劫走生辰纲不可能的任务。桥段最后的描写“这七人端的是谁?不是别人,原来正是晁盖、吴用、公孙胜、刘唐、三阮等七个人。却才那个挑酒的汉子,便是白日鼠白胜。却怎地用药?原来挑上冈子时,两桶都是好酒。七个人先吃了一桶,刘唐揭起桶盖,又兜了半瓢吃,故意要他们看着,只是叫人死心搭地。次后吴用去松林里取出药来,抖在瓢里,只做赶来饶他酒吃,把瓢去兜时,药已搅在酒里,假意兜半瓢吃,那白胜劈手夺来,倾在桶里,这个便是计策。那计较都是吴用主张,这个唤作“智取生辰纲”。

这段描写清楚地描述了整个“项目中”的角色,系统(企业)架构师晁盖,公孙胜完成了整个组织团队的搭建后,解决方案架构师吴用设计了整套计策(方案),由交付架构师白胜,刘唐等将这个方案进行完美实施达到了目标。

所以,龙哥作为一名合格资深的开发人员,他想要成为的架构师其实是技术架构师分类中的软件架构师,而我的架构师 title 其实是解决方案架构师,两者在职责分配和日常工作重点上都有比较大的区分,相信龙哥看过这篇文章之后又可以同我一起愉快地讨论格子衫的穿法了。

随着云计算的概念越来越普遍被接受,解决方案架构师(Solution Architect)或者细分的云计算解决方案架构师(Cloud Architect)越来越多地出现在大家的视野中,那到底何为解决方案架构师?为什么会有这类岗位的出现?具体职责是什么?如何在真正项目中起到作用的?接下来的讨论都是据此展开。

何为解决方案架构师

解决方案架构师(SA)的角色往往出现在为客户提供复杂的产品组合的公司当中,比如为客户提供各类服务器产品组合的 HP、Dell,为运营商提供从接入网到核心网组合的电信设备商 Ericsson、HUAWEI,到现在提供各类产品组合的云计算供应商阿里云、AWS 等等。这类公司的客户所面临的问题都不止一种解法,如何在折衷和协调之中选择出最优的答案或者最合适的答案,就是解决方案架构师(SA)的职责所在。

解决方案架构师(SA)最常见的工作是输出各类设计方案,虽然客户的场景和行业各有不同,但面对千变万化的需求和场景下的方案依然可以遵循一定的规范。

A solution fulfills a mission.
方案当有明确的目标。

解决方案架构师的出现是为了帮助客户达成一定的目标或者解决一定的问题,所以每个方案的设计都应该在基于明确需求下进行。过去常见的场景是我们有相应的产品或解决方案,然后将已经成型的产品及方案售卖给潜在的客户,但随着敏捷,弹性,云计算等越来越流行,很多时候解决方案架构师会同客户共同面对一个问题及场景,然后根据这个场景共创一类解决方案。

在云计算的场景下共创类的方案优势被进一步放大,相较于过去 IT 提供商的单一维度,云计算服务商可以提供基于各类用户场景下组合方案,同时结合众多云计算生态可以将方案定制化变成一种常态模式。

Architecting often involves making tradeoffs.
架构师应该站在不同的角度。

面对一个复杂组织的客户不同的部门一定都会站在各自的角度同解决方案架构师(SA)来阐述自己的诉求,例如对于很多传统行业公司的组织架构抽象类似下图:

daa5c5b2eacdec1b0894b029c6c59c79.png
Figure 1 组织抽象示意

不同的业务部门会产生相应的需求,需求会首先由业务 IT 团队转化成相应的技术需求,然后技术需求会由相应 IT 团队或者供应商来承接,最后向基础 IT 团队申请相应的 IT 资源,最后这类资源会由基础 IT 资源通过资源池来进行提供。

解决方案架构师面对此类客户不同团队提供的需求重点会有很大不同,面对客户的基础 IT 团队方案的侧重点是可快速部署,资源可清晰划分,有已用的运维方法。面对客户的业务IT团队提供的方案要用成熟的方案或者联合生态的方案直面需求,同时平衡费用、性能及使用习惯。

通过上面的例子可以看出,解决方案架构师要具备理解客户组织,业务及系统构成,在平衡各方利益的前提下制定最适合客户方案的能力。

Solution is an ongoing activity.
方案是过程而非结果。

最好的方案一定是持续优化出来而非一次性设计的结果。例如各种客户在做云计算改造的场景中往往会选择一种最小化的方式进行尝试,然后逐步在将自己的核心系统迁移上云。随着配套的组织结构适应了云上的各种变化之后往往会进行整套系统的云原生改造,进而开始基于数据的平台数据化及智能化,整个过程会涉及到各方面利益权衡取舍一定是渐进的方式。而在整个过程设计中的最重要产出物往往是各种架构图,为了适应未来演进的架构图和作画有异曲同工之妙,在特定的场景下要做好留白,给未来场景留下想象的空间。

从上面抛砖引玉的几点可以看出,解决方案架构师(SA)对技术及业务广度的优先级要大于深度,对多项技能的综合掌握程度要求很高。在许多场景下对解决方案架构师(SA)最大的考验是判断能力,综合多方因素的情况下如何做出基于当前场景下做出最优解的判断是解决方案架构师最重要的职责。接下来我会选取一些真实客户合作的片段来展示解决方案架构师如何工作。

以一个酒店娱乐行业的领军企业为例,在数字化转型的大背景下,这家企业正在积极使用各类新技术来帮助自身加速转型。但在实践过程中遇到了一些挑战,比如业务面临安全挑战风险非常大,安全引发的系统不稳定及引发后链路服务带来较差的客户体验;体验及安全问题对运维团队带来巨大挑战。

在与企业负责人多次沟通相关解决方案和产品策略后,我们发现,这个客户面临的并非是单一的系统问题引发的技术挑战,而是一系列系统问题最终造成了对他客户的体验及满意度产生了问题。于是,我们达成合作,决定将整个项目的立项基于解决用户体验提升上而非单关注一的安全问题。

整套系统的设计基于了阿里云上对 Anti-Bot、Anti-DDoS 等安全方案进行延展,使用了实人认证,风险识别等业务层手段解决了客户信任的问题,进而通过云安全中心和阿里云上 IT 治理的最佳实践帮助客户大幅减少运维操作中的人为及不可控因素。

这个方案给客户带来了非常明显的业务价值:

(1)基于阿里云上的 Anti-Bot、Anti-DDoS 等安全产品的应用解决了因为安全引发的系统稳定性问题。

(2)通过实人认证及风险识别等业务安全方案帮助客户大幅减少针对业务欺诈行为。

(3)通过移动推送,短信服务等服务增加了对其终端客户的体验提升。

(4)基于编排工具及可追溯的操作审计大幅降低了客户云上运维的负责度及风险。

442475d68b03bf199e1f954fbc7f0359.png
Figure 2 架构图抽象示意

解决方案架构师的价值

在云计算被广泛接受的今天,整个市场对云计算及其相关行业的解决方案架构师(SA)提出了更多的要求,如何平衡左手边多达几百款可以提供的产品组合和右手边客户千变万化的需求是每个新时代解决方案架构师面对的问题。但同时技术和业务双重的需求也给了每个处在云计算时代架构师巨大的机会,各行各业对数字化转型人才的最重要部分都是对技术和业务双重的理解。所以新的时代背景下这个已经存在已久的岗位面临着新的定义和注解,而这份增添新色的机会和荣誉一定都属于置身赛场的解决方案架构师们。

参考资料:

《Systems and software engineering — Architecture description》

《Gartner: Analyzing the Role and Skills of the Cloud Architect》

《Beautiful Architecture》

《阿里巴巴 Java 开发手册》

《AWS_Well-Architected_Framework》

《The Process of Software Architecting》



推荐阅读
  • 如何在U8系统中连接服务器并获取数据
    本文介绍了如何在U8系统中通过不同的方法连接服务器并获取数据,包括使用MySQL客户端连接实例的方法,如非SSL连接和SSL连接,并提供了详细的步骤和注意事项。 ... [详细]
  • 服务器虚拟化存储设计,完美规划储存与资源,部署高性能虚拟化桌面
    规划部署虚拟桌面环境前,必须先估算目前所使用实体桌面环境的工作负载与IOPS性能,并慎选储存设备。唯有谨慎估算贴近实际的IOPS性能,才能 ... [详细]
  • 黑客松获奖名单出炉、NFT艺术周圆满落幕 |Oasis周报 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 吴石访谈:腾讯安全科恩实验室如何引领物联网安全研究
    腾讯安全科恩实验室曾两次成功破解特斯拉自动驾驶系统,并远程控制汽车,展示了其在汽车安全领域的强大实力。近日,该实验室负责人吴石接受了InfoQ的专访,详细介绍了团队未来的重点方向——物联网安全。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 2023年,Android开发前景如何?25岁还能转行吗?
    近期,关于Android开发行业的讨论在多个平台上热度不减,许多人担忧其未来发展。本文将探讨当前Android开发市场的现状、薪资水平及职业选择建议。 ... [详细]
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本周三大青年学术分享会即将开启
    由雷锋网旗下的AI研习社主办,旨在促进AI领域的知识共享和技术交流。通过邀请来自学术界和工业界的专家进行在线分享,活动致力于搭建一个连接理论与实践的平台。 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 本文总结了一次针对大厂Java研发岗位的面试经历,探讨了面试中常见的问题及其背后的原因,并分享了一些实用的面试准备资料。 ... [详细]
  • 流处理中的计数挑战与解决方案
    本文探讨了在流处理中进行计数的各种技术和挑战,并基于作者在2016年圣何塞举行的Hadoop World大会上的演讲进行了深入分析。文章不仅介绍了传统批处理和Lambda架构的局限性,还详细探讨了流处理架构的优势及其在现代大数据应用中的重要作用。 ... [详细]
  • 本文探讨了在UIScrollView上嵌入Webview时遇到的一个常见问题:点击图片放大并返回后,Webview无法立即滑动。我们将分析问题原因,并提供有效的解决方案。 ... [详细]
  • Python3爬虫入门:pyspider的基本使用[python爬虫入门]
    Python学习网有大量免费的Python入门教程,欢迎大家来学习。本文主要通过爬取去哪儿网的旅游攻略来给大家介绍pyspid ... [详细]
  • 本文详细介绍了`android.os.Binder.getCallingPid()`方法的功能和应用场景,并提供了多个实际的代码示例。通过这些示例,开发者可以更好地理解如何在不同的开发场景中使用该方法。 ... [详细]
author-avatar
几米小八_198
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有