reliable-api-client
by danihe001
Node.js API 客户端黄金标准 v3.0 - 多Endpoint + 多Key轮询 + 限流 + 熔断器
安装
claude skill add --url github.com/openclaw/skills/tree/main/skills/danihe001/reliable-api-client文档
Node.js API 客户端黄金标准 v3.0
整合多Endpoint + 多Key轮询 + 限流 + 连接池 + 指数退避重试 + 熔断器
新功能 (v3.0)
| 功能 | 说明 |
|---|---|
| 多Endpoint | 支持多个上游地址,自动故障转移 |
| Endpoint熔断 | 每个Endpoint独立熔断器 |
| 优先级策略 | 支持 priority/least-used/round-robin |
| 延迟监控 | 跟踪每个Endpoint的响应时间 |
使用方法
const ReliableAPIClient = require('./reliable-api-client');
const client = new ReliableAPIClient({
// 多 Endpoint 支持
endpoints: [
{ url: 'https://api.example.com', priority: 10 }, // 高优先级
{ url: 'https://backup.example.com', priority: 5 }
],
endpointStrategy: 'priority', // priority | round-robin | least-used
endpointCooldown: 60000, // 1分钟冷却
// 多 Key 支持
apiKeys: ['key1', 'key2', 'key3'],
keyStrategy: 'round-robin',
// 限流
maxQPS: 10,
// 重试
maxRetries: 3,
// 熔断
circuitThreshold: 5,
circuitReset: 30000,
// 连接池
poolSize: 20
});
// 添加更多 Endpoint
client.addEndpoint('https://new-endpoint.com', priority: 8);
client.addAPIKey('new-key');
// 请求
const data = await client.get('/users');
const result = await client.post('/orders', { item: 'test' });
// 统计
console.log('Endpoints:', client.getEndpointStats());
console.log('Keys:', client.getKeyStats());
console.log('Circuit:', client.getCircuitBreakerStatus(url));
架构
请求 → [限流器] → [Endpoint选择] → [Key选择] → [熔断器] → 发送
↓
[指数退避重试]
↓
[失败 → 切换Endpoint/Key]
故障转移逻辑
- 优先选择健康的 Endpoint
- 按策略选择(priority/least-used/round-robin)
- 请求失败 → 标记 Endpoint 错误
- 连续失败 → 熔断器打开
- 熔断后 → 自动切换到下一个 Endpoint
- 冷却后 → Endpoint 恢复健康
文件
reliable-api-client.js- 主代码
相关文档
EVOMAP_STANDARD.md- 胶囊发布规范
相关 Skills
MCP构建
by anthropics
聚焦高质量 MCP Server 开发,覆盖协议研究、工具设计、错误处理与传输选型,适合用 FastMCP 或 MCP SDK 对接外部 API、封装服务能力。
✎ 想让 LLM 稳定调用外部 API,就用 MCP构建:从 Python 到 Node 都有成熟指引,帮你更快做出高质量 MCP 服务器。
Slack动图
by anthropics
面向Slack的动图制作Skill,内置emoji/消息GIF的尺寸、帧率和色彩约束、校验与优化流程,适合把创意或上传图片快速做成可直接发送的Slack动画。
✎ 帮你快速做出适配 Slack 的动图,内置约束规则和校验工具,少踩上传与播放坑,做表情包和演示都更省心。
接口设计评审
by alirezarezvani
审查 REST API 设计是否符合行业规范,自动检查命名、HTTP 方法、状态码与文档覆盖,识别破坏性变更并给出设计评分,适合评审接口方案和版本迭代前把关。
✎ 做API和架构方案时,它能帮你提前揪出接口设计问题并对齐最佳实践,评审视角系统,团队协作更省心。
相关 MCP 服务
Slack 消息
编辑精选by Anthropic
Slack 是让 AI 助手直接读写你的 Slack 频道和消息的 MCP 服务器。
✎ 这个服务器解决了团队协作中需要 AI 实时获取 Slack 信息的痛点,特别适合开发团队让 Claude 帮忙汇总频道讨论或发送通知。不过,它目前只是参考实现,文档有限,不建议在生产环境直接使用——更适合开发者学习 MCP 如何集成第三方服务。
by netdata
io.github.netdata/mcp-server 是让 AI 助手实时监控服务器指标和日志的 MCP 服务器。
✎ 这个工具解决了运维人员需要手动检查系统状态的痛点,最适合 DevOps 团队让 Claude 自动分析性能数据。不过,它依赖 NetData 的现有部署,如果你没用过这个监控平台,得先花时间配置。
by d4vinci
Scrapling MCP Server 是专为现代网页设计的智能爬虫工具,支持绕过 Cloudflare 等反爬机制。
✎ 这个工具解决了爬取动态网页和反爬网站时的头疼问题,特别适合需要批量采集电商价格或新闻数据的开发者。不过,它依赖外部浏览器引擎,资源消耗较大,不适合轻量级任务。