开发和运维经验的茶后闲谈
本文为个人的读书笔记。
DevOps三步工作法
* 从左到右的工作流
* 从右到左的反馈流
* 持续学习与实验
康威定律:系统设计受限于组织自身的沟通结构。组织规模越大,灵活性越差。
20%的时间应该用于重构代码,改进架构,用于偿还技术债务。
将运维融入开发团队中。
将开发和运维的一切纳入版本控制系统,从而增强错误恢复能力。同时尽可能部署于类生产环境中,尽早发现问题和解决问题。
自动化测试。部署流水线Jenkins
* 单元测试。
* 验收测试。
* 集成测试。
应用持续集成和基于主干的开发实践。
基于环境的发布:蓝绿部署和金丝雀发布。
基于应用的发布:特性开关和黑启动。
把部署融入日常,熟能生巧。
流量预测模型和自动扩展资源的机制。
基于假设驱动的开发和A/B测试,进行用户实验,提高创新。
人工模拟故障,增强容错和恢复能力。
直面失败,从失败中学习。
业务衡量标准:开发速度,故障数,响应时间。
有关键情节透露