前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >程序员从幼稚到成熟的标志是什么?

程序员从幼稚到成熟的标志是什么?

作者头像
伍六七AI编程
发布2024-08-20 13:33:06
770
发布2024-08-20 13:33:06
举报
文章被收录于专栏:prepared

嘿,大家好!我是伍六七。

作为一个在编程界摸爬滚打多年的老鸟,今天我想和大家聊聊咱们程序员成长的那些事儿。我们都知道,这条路可不简单,但每一步都特别关键。

怎么才能从一个刚毕业的小白,成长为一个职场独当一面的专家。

诺奖得主 罗曼·罗兰 曾说:“世界上只有一种真正的英雄主义,那就是在认清生活的真相后依然热爱生活。”

我要说的是,你只有经历过无数的故障,你才能成为一个靠谱的程序员。

线上故障,是成长的催化剂

说到故障或者线上问题,每个程序员都碰到过不少。

每次遇到问题,都得火急火燎地找原因,想办法。这不仅仅是考验你的技术,更是考验你的反应速度和解决问题的能力。

但是,事后我们分析,每次经历故障和线上问题,我们的思维方式和能力,都会有比较明显的提升。

说线上故障,是成长的催化剂,一点都不为过。

滴滴 2023 年 11 月 27 日的故障,大家应该都知道。

简单介绍一下影响:

2023 年 11 月 27 日晚间,滴滴 App 出现严重故障,包括不显示定位和无法打车等问题。 故障时间:故障持续了近 12 小时,影响范围广泛,给乘客和司机造成了不便。 同时,员工想打车回公司处理故障,因为这个故障也不能打车,只能通过其他打车平台进行打车。

故障原因:

滴滴在 2023 年 11 月 27 日晚上进行了一次大规模的K8s集群在线热升级,从版本 1.12 升级到 1.20。 这次升级过程中,由于某些原因导致所有 Pod(容器)被杀掉,而 K8s 的元数据已经被新版本修改,无法回滚,从而导致恢复时间延长.

我们能学到什么?

1、控制集群规模:当一个集群规模很大时,很容易在意想不到的地方发生类似的问题。

2、可重启:k8s 官方推荐的升级方式是,逐一地将每个节点上的 Pod 驱逐到其他节点上去,从集群中移除节点,升级,然后再将它重新加入到集群,这是一种滚动升级机制。而滴滴这次升级采用非常规的不重启升级,从而将风险扩大。

3、爆炸半径:大规模的集群,存在爆炸半径过大的稳定性风险。

复盘,让经验成为财富

处理完故障,事情还没完呢。

复盘,这是咱们从失败中站起来的关键一步。把问题摊开来看,分析原因,总结经验,这样下次再遇到类似的问题,咱们就能游刃有余了。

说到底,成为一个成熟的程序员,不光是技术要过硬,更重要的是要有那种面对问题不慌不忙,系统性解决问题的思维。

每次故障都是一次学习的机会,把握住了,你就能在这个快速变化的行业里站稳脚跟。

看到这里了,也给大家分享一下,我平时做问题根因分析和故障复盘的方法论,希望对大家有帮助~

问题根因分析

对于具体的一个问题,我们不需要十万个为什么?但是 5 个左右的为什么(why)是我们找到问题根因的基本保证,它让我们避免浮于表面,错过根本原因。这就是 5W 根因分析法。

经典丰田汽车的例子

问题 1:为什么机器停了?答:因为机器超载,保险丝烧断了。 问题 2:为什么机器会超载?答:因为轴承的润滑不足。 问题 3:为什么轴承会润滑不足?答:因为润滑泵失灵了。 问题 4:为什么润滑泵会失灵?答:因为它的轮轴耗损了。 问题 5:为什么润滑泵的轮轴会耗损?答:因为杂质跑到里面去了。

没有问到根因之前,你只是停留在表面原因。

你的解决方案也是治标不治本,只有解决了根本原因,问题才不会重复发生。

不过要注意的是,5W 只是一个经验值,具体几个问题能找到根因没有定值,有的时候可能是 3 个,有的时候可能是 8 个,我们需要灵活使用。

问题复盘

对程序员来说,bug 不可避免,问题不可避免,发生了问题,怎么客观的进行复盘,找到发生问题的根因,避免别人的锅甩到我们头上,也是有方法论的。

使用四线复盘法,能够让我们对问题复盘有自己的判断,基于时间、事实、问题根因、责任链、改进线进行问题复盘,能够让我们得到一个大家都认可的复盘结果。

学会了嘛?学会了记得点个赞~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 伍六七AI编程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 线上故障,是成长的催化剂
  • 复盘,让经验成为财富
  • 问题根因分析
  • 问题复盘
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档