以下是整理了ff4j 关于特性开关开发的一些实践
避免功能分支
合并过程中要素分支导致冲突。连续开发时,请使用基于主干的开发来关闭未完成的代码。
蓝/绿部署
避免群集节点在部署期间不一致,并交付停用的新功能。当所有节点都是最新的并且准备就绪时,切换为“ ON”。
金丝雀发布
不要创建专用的基础架构来限定新功能。将其打开以供Beta测试人员使用,并直接进入生产环境。
黑暗运行
衡量新功能对性能的影响。根据定义的传入请求比例动态激活它们,并观察系统响应。
优雅降级
调整并保护您的重负荷系统:关注高业务价值的请求,并动态丢弃其他请求(客户,潜在客户,购物车内容..)。
瘦客户端应用
通过提供空的架子来避免烦人的移动应用程序的频繁部署和下载:向您的服务器请求预期的活动功能。
业务切换
切换不仅是技术上的。定义自己的规则并根据业务需求(例如办公时间,用户个人资料)评估功能...
A / B测试
使用业务切换拆分A和B人口。不仅可以使用CRM来衡量业务影响,还可以使用非常相同的框架来衡量命中率。
断路器
使用专用策略和自定义规则实施断路器模式,从而可以主动关闭不可用的功能