SuperAPI AI 工具集

hubspot-reliability-patterns

通用与其它

查看项目

更新于 10-15 23:26

技能介绍

用途:为 HubSpot CRM 集成提供生产级容错能力,应对 API 限流(429)、5xx 故障与长时间不可用。

主要能力:一是 SDK 内置重试作为第一道防线,通过 @hubspot/api-client 的 numberOfApiCallRetries 配置自动重试 429 与 5xx 错误;二是使用 opossum 为 HubSpot 调用包裹断路器,配置超时、错误率阈值、重置超时、卷阈值与滚动窗口,并监听 open、halfOpen、close 状态;三是优雅降级,结合 lru-cache 缓存,在请求失败时先返回缓存数据,再退回静态 fallback,并标明数据来源为 live、cache 或 fallback;四是死信队列,记录失败操作(含操作类型、负载、错误、correlationId、尝试次数与时间戳),支持定期重试并统计待处理数量;五是健康检查,返回 healthy、degraded 或 unhealthy 状态,结合断路器状态、DLQ 积压与 API 延迟判断。

必要用法:需先安装 @hubspot/api-client(已内置重试),断路器和 Redis/数据库(用于死信队列)为可选依赖。代码示例中使用 HUBSPOT_ACCESS_TOKEN 环境变量;可通过 resilientHubSpotCall 包装调用,使用 withFallback 处理降级。

适用场景:对可用性要求较高的 HubSpot 集成,如联系人的创建、查询与更新,需要防止级联失败并保证部分功能可用的系统。

限制:文档未说明具体收费、价格与平台支持范围;死信队列示例为内存实现,生产环境应使用 Redis 或数据库持久化;断路器阈值、缓存 TTL、DLQ 重试上限(示例为 5 次)等参数需根据实际情况调整。若缓存长时间提供旧数据,应在 UI 提示数据可能过期。