微服务的持续交付与运行实践
在微服务架构的开发与运维中,持续交付(Continuous Delivery,CD)和系统运行是至关重要的环节。它们不仅能提高开发效率、降低风险,还能确保系统的高质量和稳定性。
持续交付概述
持续交付赋予了我们在任何时候安全地将组件部署到生产环境的能力,这一能力强大之处在于它能帮助我们控制风险。在微服务环境中,持续交付意味着能够创建特定版本的微服务,并按需在生产环境中运行该版本的一个或多个实例。
一个完整的持续交付管道包含以下关键元素:
1. 版本控制的本地开发环境 :每个服务都有一个受版本控制的本地开发环境,由单元测试提供支持。必要时,可以使用模拟来针对其他服务的本地子集测试该服务。
2. 预发布环境 :用于验证微服务并可重现地构建部署工件。验证过程自动化,但必要时也允许手动验证。
3. 管理系统 :开发团队使用该系统对预发布和生产环境执行基本操作组合,以自动化方式实现所需的部署模式。
4. 生产环境 :尽可能由部署工件构建而成,具备基本操作的审计历史记录。该环境具有自我纠正能力,能采取补救措施,如重启崩溃的服务,还能提供智能负载均衡,允许服务间的流量变化。
5. 监控和诊断系统 :在每次基本操作应用后验证生产系统的健康状况,让开发团队能够深入了解和跟踪消息行为,并生成警报。
持续交付管道假定有缺陷的工件生成是常见现象,因此会在每个阶段过滤这些有缺陷的工件。这种按工件逐个验证的方式,而非验证整个
超级会员免费看
订阅专栏 解锁全文
171万+

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



