server: address : ":8000" name: "gateway" rate: limit: 800 burst: 2000 # IP限流配置 ip: limit: 100 # IP限流: 100 req/s burst: 200 # IP突发: 200 # 用户限流配置 user: limit: 50 # 已登录用户: 50 req/s burst: 100 # 已登录用户突发: 100 # 服务维度限流配置 services: # 高频业务服务 - 需要更高配置 customerService: limit: 500 # 客服服务: 500 req/s (高频对话) burst: 700 # 突发: 700 order: limit: 450 # 订单服务: 450 req/s (高频交易) burst: 600 # 突发: 600 assets: limit: 400 # 资产服务: 400 req/s (高频访问) burst: 600 # 突发: 600 (有Stream削峰) cid: limit: 350 # 证书服务: 350 req/s (高频证书请求) burst: 500 # 突发: 500 # 中频基础服务 oss: limit: 300 # 文件服务: 300 req/s (通用文件上传,可能被多个服务调用) burst: 450 # 突发: 450 # 低频业务服务 wallet: limit: 120 # 钱包服务: 120 req/s (低频转账) burst: 200 # 突发: 200 market: limit: 100 # 市场服务: 100 req/s (低频交易) burst: 180 # 突发: 180 knapsack: limit: 80 # 背包服务: 80 req/s (低频功能) burst: 150 # 突发: 150 # 熔断器配置 - 每个服务独立配置 circuitBreaker: # 高频业务服务 - 更严格的熔断策略 customerService: enabled: true # 是否启用熔断器 maxFailures: 5 # 连续失败5次触发熔断 timeout: 30s # 30秒后尝试恢复 successStatusCodes: 200,201,204 # 视为成功的HTTP状态码 slowRequestThreshold: 3s # 慢请求阈值(超过此时间视为失败) enableSlidingWindow: true # 是否启用滑动窗口 failureRateThreshold: 0.5 # 失败率阈值(0.0-1.0) enableFallback: false # 是否启用降级 fallbackMessage: "" # 降级提示消息 requestTimeout: 30000 # 请求超时时间(毫秒),0表示不设置 distributedTTL: 300 # 分布式熔断状态TTL(秒),0表示不启用分布式熔断 statIntervalMs: 1000 # 统计窗口时长(毫秒),默认1000ms minRequestAmount: 5 # 最小请求数量,默认与maxFailures相同 order: enabled: true maxFailures: 3 # 订单服务更敏感 timeout: 60s # 60秒后尝试恢复 successStatusCodes: 200,201,204 slowRequestThreshold: 2s # 订单服务要求更快的响应 enableSlidingWindow: true failureRateThreshold: 0.6 # 订单服务对失败率更敏感 enableFallback: false fallbackMessage: "" requestTimeout: 30000 distributedTTL: 300 assets: enabled: true maxFailures: 10 # 资产服务更宽松 timeout: 60s successStatusCodes: 200,201,204 slowRequestThreshold: 5s # 资产服务可能较慢,给更多时间 enableSlidingWindow: false enableFallback: false fallbackMessage: "" requestTimeout: 30000 distributedTTL: 0 cid: enabled: true maxFailures: 8 timeout: 45s successStatusCodes: 200,201,204 slowRequestThreshold: 3s enableSlidingWindow: false enableFallback: false fallbackMessage: "" requestTimeout: 30000 distributedTTL: 0 # 中频基础服务 oss: enabled: true maxFailures: 15 timeout: 120s successStatusCodes: 200,201,204 slowRequestThreshold: 10s # 文件上传可能较慢 enableSlidingWindow: false enableFallback: false fallbackMessage: "" requestTimeout: 60000 # 文件服务可能需要更长时间 distributedTTL: 0 # 低频业务服务 - 最宽松的熔断策略 wallet: enabled: true maxFailures: 5 timeout: 120s # 2分钟 successStatusCodes: 200,201,204 slowRequestThreshold: 5s enableSlidingWindow: false enableFallback: true # 启用降级 fallbackMessage: "钱包服务暂时繁忙,请稍后再试" # 降级提示消息 requestTimeout: 30000 distributedTTL: 300 # 钱包服务启用分布式熔断 adminIPs: "127.0.0.1,116.204.74.41" # 允许重置熔断器的管理员IP列表(逗号分隔) market: enabled: true maxFailures: 5 timeout: 90s successStatusCodes: 200,201,204 slowRequestThreshold: 3s enableSlidingWindow: false enableFallback: false fallbackMessage: "" requestTimeout: 30000 distributedTTL: 0 knapsack: enabled: false # 背包服务暂时不启用熔断 maxFailures: 5 timeout: 90s successStatusCodes: 200,201,204 slowRequestThreshold: 3s enableSlidingWindow: false enableFallback: false fallbackMessage: "" requestTimeout: 30000 distributedTTL: 0 redis: # 集群模式配置方法 default: address: 116.204.74.41:6379 db: 0 idleTimeout: "60s" #连接最大空闲时间,使用时间字符串例如30s/1m/1d maxConnLifetime: "90s" #连接最长存活时间,使用时间字符串例如30s/1m/1d waitTimeout: "60s" #等待连接池连接的超时时间,使用时间字符串例如30s/1m/1d dialTimeout: "30s" #TCP连接的超时时间,使用时间字符串例如30s/1m/1d readTimeout: "30s" #TCP的Read操作超时时间,使用时间字符串例如30s/1m/1d writeTimeout: "30s" #TCP的Write操作超时时间,使用时间字符串例如30s/1m/1d maxActive: 100 consul: address: 116.204.74.41:8500 services: - name: customerService - name: test111 jaeger: #链路追踪 addr: 116.204.74.41:4318