写点什么

你的架构升级是靠故障驱动?还是规划驱动?

  • 2020-04-16
  • 本文字数:1803 字

    阅读完需:约 6 分钟

你的架构升级是靠故障驱动?还是规划驱动?

每个季度末,我都会抽出一周的时间与团队核心人员逐一谈心,一来帮助他们舒缓下疲劳的情绪,二来给大伙创造一个吐槽的环境。


在以往的谈话中,我会有意识的避免总结与回忆,多聊一些与畅想未来相关的话题,为什么呢?因为时间是无法逆转的,过去就是过去了,与其强忍尴尬回忆过去,不如试着畅想未来,让气氛变的更轻松,至少这种方式使得整个谈话过程笑声变多了,苦瓜脸变少了。


今天在与某架构师谈话中,他的某些观点却让我感到有些意外。为什么呢?我们都聊了些什么?


我整理了他的内容,大致是觉得系统架构升级的驱动力多半来自于故障,比如 2012 年 11 月 11 日,各大电商风云大战,淘宝网和京东网虽做足准备,但还是由于流量太大导致服务器瘫痪。回望自己,虽说会做一些高可用测试,也确实能在测试阶段发现大量性能、高可用的潜在问题,但基本都浮于表面,我说的不对吗?还记得半年前的机房迁移吗?做足准备了吧,那为什么结果还是被冲了个七零八落呢?


他接着说,说完技术,再来说说人,由于 “客观原因”,我们的架构师在高可用,在分布式,甚至在自动化方面都缺乏经验,除非高薪聘请大咖加入,想要通过自身规划得到稳定、高效的技术架构,几乎没有可能。


这番话很实在,也很直接,让我当场有些措手不及。


仔细想想,有这样想法的架构师,或程序员不在少数,他们坚信自己系统升级的必要性来源于是否出现故障,只要认真且较真的抓住这次机会,修复他,搞定它,让他下次不再发生,我就是棒棒哒,至于那些还未发生的,就是不存在的,既然不存在,我怎么能知道?靠瞎猜吗?


不仅如此,他们始终相信,我没经验,就没法开展,至于什么未来规划,更是无稽之谈。也许这是遮掩自己的不足,找准时机展露自己是救世主的一种另类方式,但事实证明他们把自己定义为一名消防队员,而不愿意为成为一名规划者。


有人说了,架构的发展多半来自于业务的需要,现在业务放缓,现有架构也满足当前需求,那我还需要主动规划吗?我觉得,不仅需要,而且要加大投入,为什么呢?


我觉得,将产线发生故障作为架构升级驱动力的想法纯属鸵鸟思维,有些故障会导致业务一击毙命,还有然后吗?再说了,一般考验系统架构的最好方式是大流量,而有意思的是,流量这东西不仅不好预估,而且不确定性极强。为了应对这样的场景,所以我们常会听到架构师说,“我这东东是带自动扩展的,可大可小,可根据流量快速的自动调整。” 听上去真棒,但当真的 “狼来了",需要你在产线施展神通之时,咋哑火了呢?仔细一查,原来同时扩展小于十个节点没问题,大于十个节点就触发了某 BUG,其他都测了呀,就差这个场景没想到呀,你能怪他没好好测试吗?


所以,请收起那些可笑的想法,将明确的目标与实施路径写入规划,耗费上千次讨论,废弃数套环境,奉献半生精力,去执行,去折腾。



随着宏观经济与金融监管的风云突变,我曾在几个月前写过一篇有关 业务增速减缓后如何面对技术管理 的文章,而在这样的客观环境下,我们又是如何进行技术架构规划的呢?

寻找目标企业,不耻下问,关注细节

常听见某某人自夸,说自己认识这个,有哪个人的微信,这能证明啥?最多能证明你的社交能力强,人脉广泛,所交流的技术话题也多半偏向顶层设计,或概念构思,对实质性规划没什么太大帮助。


我所采取的是,将目标分拆为不同技术类型,比如分布式中间件,持续集成与交付,DevOPS 等,利用这些人脉关系,寻找行业内不同的目标企业进行学习,比如阿里的中间件团队,携程的持续集成与交付,带领小伙伴们登门拜访,不耻下问,关注他们的发展历程、技术选型及用人标准等细节。


每次都有收获,每次都会得到启发,今年许多版本的迭代均得益于这项方式。

构建适合自己的非功能性测试套路

按之前的方式,是否可以把某某年度的 OKR 定义成 “必须达成 A 系统 P0 级事故 3 次,并导致 10 台以上服务节点宕机。”,为啥这么定?逻辑很简单啊,事故级别越高,服务节点宕机数越多,架构设计的驱动力越大呀,哦耶!


如果技术负责人的脑子没被驴踢的话,不可能这样设定 OKR,那该怎么解决这个矛盾呢?


我所采取的是,建设随机破坏性故障演练系统,并制定模拟性场景演练,比如拔网线、丢包、I/O 不规则波动、消息阻塞等,由于曾写过一篇有关 随机故障测试系统 的文章,在这里就不详细介绍了。



当然,这些看似简单的思路,想要做到,并非易事,毕竟扯淡总是容易的,刷新认知才是最难的。


本文转载自头哥侃码公众号。


原文链接:https://mp.weixin.qq.com/s/j8veJRVJbZeNDDJwkjU50g


2020-04-16 17:311145

评论 1 条评论

发布
用户头像
1.登门拜访 2.随机故障演练,学习了,谢谢
2020-04-17 02:57
回复
没有更多了
发现更多内容

Vue 项目如何迁移小程序

FinClip

技术专家云集,OpenHarmony技术峰会分论坛聚焦内核及视窗创新

极客天地

附安装包和快捷键!5个不能错过的 Blender 插件

Finovy Cloud

软件 blender 3ds Max云渲染

分投趣fintoch去中心化借贷交易dapp系统开发搭建

开发微hkkf5566

好工作怎么选?五个核心的考量

小谷哥

怎么预防LED显示屏静电

Dylan

设备 LED显示屏 全彩LED显示屏

云快充研发中心平台架构师谈云原生稳定性建设之路

阿里巴巴中间件

阿里云 容器 云原生

尚硅谷SSM项目视频发布

小谷哥

BI工具数据看板哪个好,瓴羊Quick BI整不错!

流量猫猫头

从青铜到王者,揭秘 Serverless 自动化函数最佳配置

阿里巴巴云原生

阿里云 Serverless 云原生

阿里云 ACK@Edge 助力元戎启行加速进入自动驾驶规模化生产

阿里巴巴云原生

阿里云 云原生容器 云原生r

软件测试/测试开发 | 跨平台API对接(Java)

测试人

软件测试 自动化测试 测试发开

详解Redis的主从同步原理

C++后台开发

redis 中间件 主从同步 后端开发 Linux服务器开发

消灭报销,从超级差规开始,用友BIP解决大型企业商旅费控核心难题用友BIP

用友BIP

差旅报销

搞定预设,让你的 ChatGPT 不受限制 | 社区征文

江户川码农

人工智能 聊天机器人 openai ChatGPT

如何基于 Antmove 将小程序快速迁移至 FinClip 环境

FN0

小程序 支付宝小程序 finclip

转型调研 | “鼎新汇•企业行”第一站:走进中国联通软件研究院

信通院IOMM数字化转型团队

数字化转型 IOMM 鼎新汇•企业行 鼎新杯

从资源弹性到数据弹性,乾象如何将云上量化研究效率提升 40%?

阿里巴巴云原生

阿里云 云原生

基于人形检测的划区域客流统计

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜 人形检测

关于印度跨境数据传输,印度放宽了跨境数据传输

镭速

大国重器用友BIP,助力贸易行业数智化转型

用友BIP

数智化

博睿数据数智领航营全国巡讲火热预约中,扫码即可参与报名~ ​​​

博睿数据

智能运维 博睿数据 数智领航营

免费下载丨一看即会,Serverless 技术进阶必读百宝书

阿里巴巴云原生

阿里云 Serverless 云原生

尚硅谷Redis7实战教程发布

小谷哥

科技大势怎么看 2023怎么干?

加入高科技仿生人

人工智能 低代码 科技 数字孪生 6G

阿里云函数计算助力高德RTA广告投放系统架构升级

阿里巴巴中间件

阿里云 云原生 函数计算

60% 程序员大呼:我要远程办公!

引迈信息

敏捷开发 低代码 远程办公

软件测试/测试开发 | 测试平台开发-前端开发之Vue.js 框架

测试人

软件测试 测试开发 测试平台

写作一年之后开始反思博客应该写什么

宇宙之一粟

个人成长 写作 博客

阿里云函数计算 FC 助力高德 RTA 广告投放系统架构升级

阿里巴巴云原生

阿里云 云原生 函数计算

你的架构升级是靠故障驱动?还是规划驱动?_架构_头哥侃码_InfoQ精选文章