Apollo Router v1.61.6 版本发布:JWT 指标修复与 Redis 连接优化
Apollo Router 是一个高性能的 GraphQL 网关,用于构建和管理 GraphQL API 的联邦架构。作为 Apollo GraphQL 生态系统中的核心组件,它提供了请求路由、查询规划、缓存管理等功能,帮助开发者构建可扩展的 GraphQL 服务。
JWT 认证指标修复
本次发布修复了 JWT 认证指标 apollo.router.operations.authentication.jwt 的行为问题。根据 GraphQL 规范,这个计数器指标应该记录所有使用 JWT 的请求,并通过 authentication.jwt.failed 属性区分成功和失败的认证。在之前的版本中,该指标仅用于记录失败的认证尝试,这导致了监控数据的不完整。
同时,项目中存在一个名为 apollo.router.operations.jwt 的旧指标,它仅记录成功的认证,现在已被标记为弃用。开发者应该迁移到新的标准化指标以获得更全面的认证监控数据。
Redis 连接泄漏修复
在热重载过程中,Router 会创建新的内部实例并逐步淘汰旧实例。v1.61.6 版本修复了一个关键问题:旧实例中的 Redis 连接未能正确关闭,导致连接数不断增加并消耗内存资源。
为了帮助监控 Redis 连接状态,本次更新新增了 apollo.router.cache.redis.connections 指标,这是一个上下计数器,可以跟踪活跃的 Redis 连接数。该指标包含 kind 标签,用于区分不同类型的 Redis 连接池,与其他缓存指标(如 apollo.router.cache.hit.time)保持一致。
GraphQL 响应解析改进
在处理协处理器返回的 GraphQL 响应时,Router 现在完全遵循 GraphQL 规范。当协处理器返回包含执行错误的响应时(如 {"data": null, "errors": [...]}),Router 将保留完整的响应结构,而不再移除 data: null 字段。这一改进确保了与 GraphQL 规范的完全兼容性。
批处理指标精度提升
apollo.router.operations.batching.size 指标现在能够准确反映 GraphQL 请求批处理的大小。之前的版本偶尔会返回分数值,这在统计批处理大小时是不合理的。新版本确保了该指标始终返回整数数值,提供更精确的批处理规模监控数据。
配置增强:HTTP 头读取超时
v1.61.6 版本新增了 server.http.header_read_timeout 配置选项,允许开发者自定义 HTTP 头读取的超时时间。默认值为 10 秒,与之前的硬编码值保持一致。对于需要处理慢速客户端的场景,可以适当延长这个超时时间:
server:
http:
header_read_timeout: 30s
订阅验证改进
根据最新的 GraphQL 规范 RFC,Router 现在会在验证阶段拒绝那些在订阅根字段上使用 @skip 或 @include 指令的查询。这些指令可能导致订阅在运行时无效,提前在验证阶段拦截这类查询有助于提高系统的健壮性。
Apollo Router v1.61.6 通过这些改进和修复,进一步提升了系统的稳定性、监控能力和规范合规性,为开发者提供了更可靠的 GraphQL 网关服务。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0153- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112