DevOps 开发者指南:优化软件开发与运维流程
1. 个人目标与团队目标的冲突
在软件开发和运维过程中,个人目标有时会与团队目标产生冲突。例如,人们往往更关注个人的工作效率,而忽视了帮助他人可能带来的整体效益提升。这种对个人目标影响的盲目性是危险的,因为人们担心帮助他人会降低自己的个人生产力,或者担心同事在得到帮助后表现更好。
2. 衡量指标的差异
软件开发和运维的衡量指标通常是不同的。软件开发更关注软件的内部或外部质量,即所交付的功能总和;而运维则侧重于应用程序甚至整个服务器的运行时属性。因此,为了优化开发和运维流程,我们需要采用不同的测量方法和指标。
3. 变更管理
3.1 变更的定义与跟踪
敏捷团队通常不区分错误修复、功能增强或变更请求,而是使用“变更”这一通用单位来跟踪进度。将所有变更(包括软件、中间件和基础设施的变更)视为统一的“变更”,可以作为开发和运维合作的基础,也有助于将生产问题反馈到工作积压中。
3.2 变更可能引发的问题
当变更应用到系统中时,可能会引发问题。发现问题并确定其根本原因需要大量时间。在进一步调查后,需要决定是回滚到旧版本来解决问题,还是通过应用修复程序或临时解决方案来继续推进。
3.3 MTTR 和 MTTD
运维中常用的两个术语是平均修复/解决时间(MTTR)和平均检测时间(MTTD)。MTTR 指的是解决系统或网络问题并恢复正常运行所需的时间;MTTD 则描述了生产中事件发生到运维团队检测到该事件并采取恢复行动之间的时间差。
超级会员免费看
订阅专栏 解锁全文
79

被折叠的 条评论
为什么被折叠?



