稳定性思考
2023-08-09 08:47:01 0 举报
AI智能生成
软件架构、运维、稳定性、系统质量
作者其他创作
大纲/内容
定义
稳定性的定义具有多样性
首先稳定性定义-系统/软件产品的质量
软件质量模型划分为8大
功能性
性能效率
兼容性
易用性
可靠性
信息安全性
维护性
可移植性
稳定性定义-高可用
一个完整周期单元时间 = 无故障时间 + 故障恢复时间。
尽可能延长无故障时间,尽可能缩短故障恢复时间,这样我们整体可用性将大大提高,也就是所谓的"稳定"。
工作中的思考
个人理解稳定性=稳定+性
稳定:稳定是王道,简单就是稳定,越简单越稳定。
性:性能优化提升,随着时间推移,业务不断发展,系统肯定是会越来越慢,这个时间就需要做性能提升。
龙隆理解
稳定性:从故障的角度思考:在资源有限的条件下,争取故障最小化
皇策理解
稳定性:从全链路可用性角度定义稳定性。(梳理各个链路环节,定义各个链路的可用性就是稳定性)
CTO线稳定性思考
主要分为三个方面,日常稳定性、大促稳定性和一些稳定性专项:
【日常稳定性】: 协助其他同学或者业务进行日常的开发&运维,排查&定位&处理些疑难&线上紧急问题等。
【大促稳定性】: 为大促保驾护航,对于比日常小促还多的大促,分分钟马虎不得,S级大促一定要
全力做好,做不好是能力问题;非S级大促也一定要做好,做不好又是态度问题。
全力做好,做不好是能力问题;非S级大促也一定要做好,做不好又是态度问题。
【稳定性专项】: 在做大促和日常稳定性的过程中肯定会发现不合理或者能做的更好的地方,这个时候需要拿出来专项去做,这些一个一个专项一般都是非常难搞和费力的,好搞一般早就做了
结论:稳定性的本质就是“发现问题”并“修复问题”
工作
风险来源
随着业务发展,风险不可避免。
来源
产品迭代
代码bug
外部场景驱动
发现风险
发现问题是很困难,运维监控工具就是试图发现风险的重要手段
问题修复
发现风险是第一步骤,处理风险才是目标。
量化定义
方法
提升研发人员专业素质
练人: 真男人,必须要有强健的肌肉,身体和精神!稳定性你懂的,密集的压测通宵,高强度的输出,一般在"血(疲)量(惫)低(不)(堪)的时候"越疯狂,且是一场场持久战...
练心: 虚心好学,没有谁就一定比谁牛逼,不懂就问,且大神遍地;不慌&冷静,遇事不要慌,冷静分析,心不崩系统也不会崩; 求根问底,对任何一个疑难问题或者不熟悉的,要多去了解清楚,真相&风险往往隐藏在细节里面,尤其各种压测...;适可而止:对于实在解决不了的问题&风险,要及时寻求帮助,术业有专攻,不要一直钻牛角尖,非得要自己搞个天翻地覆,不要因小失大....; 乐观耐操:没有过不去的坎,调整心态,迎接下一次失败。
练技:工欲善其事必先利其器,日常就有厉兵秣马,不能临时抱佛脚。东西其实比较多,我认为比较重要的几个点。对于场景的系统和工具,我们不仅要知道如何使用,更要知道起底层设计,架构原理,一方面知己知彼才能事半功倍,另外一方面学习优秀的系统设计是提高自我最直接的手段;问题一般就那些问题,cpu/load高,线程池满,超时... 问题一般就是那些问题,套路也无外乎就那些,需要多锻炼多用熟悉的系统和工具不断的训练,阿里系对相关工具还是比较全的... 最后一个也是无法短时间习得的东西,需要不断对系统的代码,模型、流程了解,不断建立在各种场景下系统各项指标基线,了解系统上下游链路,才能快速今晚问题诊断和恢复。
技能
收获
0 条评论
下一页