灰度发布使用指南 ✨ 功能介绍 💡 WARNING
灰度发布(Gray Release)是一种渐进式的发布策略,通过向部分用户推送新版本,实现:
🎯 风险可控的版本发布🔍 新功能的效果验证📊 用户反馈的收集🛡️ 系统稳定性保障应用场景 ✓ 新功能试点发布✓ 版本平滑过渡✓ A/B测试实验✓ 负载能力评估配置说明 ⚙️ 基础配置参数 参数名类型必填默认值说明enabledboolean否false是否启用灰度发布itemsarray是-灰度规则列表灰度规则配置 (items) 参数名类型必填说明urlsarray是URL规则列表,用于区分不同系统的灰度规则versionstring是灰度版本号rulesarray是具体灰度规则配置规则类型说明 (rules) 类型说明示例值AUTHORIZATION基于令牌判断"token-xxx"IP基于IP地址判断"192.168.1.*"MERCHANT基于商户判断"merchant-001"USER基于用户ID判断"user-123"HEADER基于请求头判断"custom-header"TIP
URL匹配规则详见 URL匹配规则说明
配置示例 📝 基础配置 yamlwueasy:
gateway:
filter:
gray:
enabled: true
items:
- urls: /**
version: gray-2
rules:
- type: IP
data: 127.0.0.1多规则配置 yamlwueasy:
gateway:
filter:
gray:
enabled: true
items:
- urls: /api/**
version: gray-2
rules:
- type: IP
data: 192.168.1.*
- type: USER
data: VIP.*
- urls: /admin/**
version: gray-1
rules:
- type: HEADER
field-name: x-gray-flag
data: test微服务配置 🔧 Nacos配置 yamlspring:
cloud:
nacos:
discovery:
metadata:
version: gray-2 # 指定灰度版本号版本说明 ⚠️ CAUTION
版本号规则:
以 gray- 开头的版本号 → 灰度服务空版本号或非gray开头 → 正常服务未匹配到灰度服务 → 自动路由到正常服务最佳实践 💡 灰度策略
从小范围用户开始逐步扩大灰度比例设置合理的回滚机制监控建议
监控灰度服务性能跟踪用户反馈对比新旧版本数据常见问题 ❓ 灰度规则不生效 检查enabled是否开启验证version配置是否正确确认rules匹配规则是否准确服务路由异常 检查Nacos配置是否正确确认version命名是否规范验证服务注册状态