SuperAPI AI 工具集

retry-fallback

数据与分析

查看项目

更新于 10-15 20:30

技能介绍

用途:处理网络请求偶发失败、外部服务临时中断,在依赖不可用时优雅降级,避免级联失败。

主要能力:指数退避重试(延迟随尝试次数增长并设上限);抖动(jitter)随机化延迟,防止惊群;回退(fallback)在主数据源失败时改用缓存或备用值;多源尝试(tryMultiple)依次尝试多个数据源;优雅降级(withDegradation)在完整、降级、最小功能间逐级回退;组合模式 resilientFetch 将重试与回退结合。

使用方式:提供 TypeScript 与 Python 实现。TS 侧导出 retry、withFallback、tryMultiple、resilientFetch,配置项含 maxRetries、baseDelayMs、maxDelayMs、backoffMultiplier、jitter、retryableErrors。Python 侧提供 RetryConfig、retry、with_retry 装饰器、with_fallback。默认仅重试网络、超时、429、502、503 等瞬时错误。

适用场景:调用外部 API、支付等易失败操作、需要缓存兜底或降级展示的仪表盘。

限制与注意:不应重试 400、401、404 等非瞬时错误;需设置最大重试次数与最大延迟;建议启用抖动并记录重试日志;关键路径应准备回退方案。具体安装命令与包名暂未提供。