提高软件交付速度的6种架构策略

本文向您展示如何评估软件交付性能,并向您介绍可用于提高软件交付性能的六种策略。

如何评估软件的交付速度

软件交付速度能够促进业务发展,那么我们如何评估软件的交付速度呢?主要有以下4个指标

  • 一个功能从开发到上线运营使用需要多久?

  • 多久做一次生产发布?

  • 一个季度变更的失败率是什么?

  • 一次故障恢复需要多久?

这其中有4个关键指标(主要参考了软件架构实践第4版)

提高软件交付速度的6种架构策略

1. 灰度发布

支持最小化金丝雀发布、A/B 测试、滚动升级,自动化控制新老版本的上线和升级。

2. 回滚

当线上服务出现问题,保证无影响的情况下,支持一键回滚到上个版本。

3. 脚步部署命令

日常发布过程会存在一些手动的操作,支持把这些手动的操作变成自动化脚本部署

4. 交互服务管理

有服务治理框架,保证各个服务之间通信的负载均衡、限流、降级和重试,并保证通信协议的兼容性

5. 包依赖项

通过一些容器化技术、Helm包管理器保证底层依赖之间的兼容性。

6. 功能切换

通过一些配置控制项来保证线上的服务的鲁棒性,出现问题之后可以通过一些特性开关选择打开或者关闭一些功能,避免一些不必要的问题的发生。


原创不易,随手关注或者"在看",诚挚感谢!

相关推荐
feng_xiaoshi4 小时前
【云原生】云原生架构的反模式
云原生·架构
架构师吕师傅6 小时前
性能优化实战(三):缓存为王-面向缓存的设计
后端·微服务·架构
团儿.8 小时前
解锁MySQL高可用新境界:深入探索MHA架构的无限魅力与实战部署
数据库·mysql·架构·mysql之mha架构
艾伦~耶格尔17 小时前
Spring Boot 三层架构开发模式入门
java·spring boot·后端·架构·三层架构
_.Switch20 小时前
Python机器学习框架介绍和入门案例:Scikit-learn、TensorFlow与Keras、PyTorch
python·机器学习·架构·tensorflow·keras·scikit-learn
神一样的老师1 天前
构建5G-TSN测试平台:架构与挑战
5g·架构
huaqianzkh1 天前
付费计量系统通用功能(13)
网络·安全·架构
2402_857583491 天前
新闻推荐系统:Spring Boot的架构优势
数据库·spring boot·架构
bylander1 天前
【AI学习】Mamba学习(一):总体架构
人工智能·深度学习·学习·架构
未来之窗软件服务1 天前
玄武星辰大阵——软件终端架构思维———未来之窗行业应用跨平台架构
架构