17、特性开关与软件开发工作流

特性开关与软件开发工作流

1. 特性开关相关知识

特性开关(Feature Flags)在软件开发中十分重要,它能让系统在运行时改变行为。特性开关的配置存储位置有多种选择:
- 系统配置
- 用户配置
- 应用数据库
- 单独的数据库
- 通过 API 访问的单独系统

具体选择取决于实际用例。

不过,使用特性开关也会带来技术债务问题。如果使用特性开关,最终可能会得到一个高度可配置的系统,大量分散在多个配置源的开关相互依赖,启用或禁用开关会给系统稳定性带来很大风险,甚至陷入特性开关地狱,数百个开关无人知晓用途。

为避免这些问题,应遵循以下最佳实践:
1. 指标监控 :特性开关是一种技术债务,需像测量代码覆盖率等指标一样对其进行测量。测量特性开关的数量、存在时长、在各环境中的评估情况以及使用频率。
2. 集中管理 :在一个中心位置管理开关,每个开关应有所有者和描述,并记录开关之间的依赖关系。
3. 融入流程 :将特性开关的管理融入开发流程,如在审查会议中审查开关,确保定期使用开关的人员检查哪些开关可从系统中移除。
4. 命名规范 :为所有类型的开关使用命名规范,例如用 tmp- 作为临时开关的前缀, perm- 作为永久开关的前缀。开关名称应能表明其类型和在代码库中预计保留的时长。

还有一种清理分支的技术,部分团队喜欢,部分团队不喜欢。其思路是,创

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值