工程实践知乎 - TencentDB腾讯云数据库
文章系统剖析了 Redis/Valkey Cluster 在自动故障转移中的三段流程:PFAIL/FAIL 判死、故障副本拉票选举、以及新主广播后刷新路由,并解释了 currentEpoch、configEpoch、auth_timeout、auth_retry_time 和 data_age 的相互作用。作者指出,多个主节点同时故障时,多个副本会在同一 epoch 里并发拉票,因“每个 voter 同 epoch 只能投一票”而发生选票瓜分,导致 5 分片甚至 128 分片集群都可能长期无法自愈。腾讯云在 Valkey PR #1018 中引入 failed_primary_rank,以 shard_id 字典序为故障分片排序,在原有副本内排序基础上再叠加分片间错峰延迟,把抢票改成排队选举。文章还补充了 PR #1009 的快速失败兜底与 PR #762 的分片内错峰,说明这些优化都不改变一票一 epoch 的防脑裂原则,只是降低冲突概率并缩短恢复窗口。其价值在于把协议层的随机恢复,推进为大规模云环境下更确定的自愈流程;边界则是仍依赖 gossip 一致性,极端时序竞争下仍需快速失败兜底。
推荐收录,因为文章给出了从协议机制到线上故障现象的完整链路证据,并明确指出多主同时故障下的选票瓜分是 Cluster 自愈失败的根因。适合做 Redis/Valkey 高可用、分布式选举和故障转移设计的长期参考,尤其对云数据库和大规模集群运维很有迁移价值。
工程实践知乎 - TencentDB腾讯云数据库
文章围绕 MongoDB 基于 WiredTiger 的物理备份在 hidden 节点上持续膨胀的问题展开,指出根因是 backup cursor 将历史 checkpoint 持续 pin 住,导致旧 extent 不能回收,新写入只能不断追加到文件尾部。作者进一步分析了 oplog.wt 在备份期既最容易膨胀、又几乎没有回档价值的特点,并给出按表级粒度释放 checkpoint 的内核接口 `WT_CONNECTION::backup_release_checkpoint`,让旁路备份服务在拷完单表后即时通知引擎恢复空间回收。针对 oplog,则在备份开始即释放并跳过拷贝,同时配合元数据处理避免恢复失败。文章还补充了 crash recovery 场景下的 sentinel 文件方案,用于区分备份中断与备份完成,避免错误进入 hot backup restore 路径。实测显示,在多表场景下备份耗时约减半,hidden 节点峰值占用和物理膨胀率显著下降,但方案强依赖 MongoDB/WiredTiger 备份与恢复语义。
推荐收录,因为文章给出了从根因分析、内核改造到恢复语义兜底的完整闭环,并用线上实测数据证明了膨胀率和回档成本的下降。适合做数据库存储引擎、备份系统和稳定性优化的参考,尤其对需要处理 checkpoint、快照一致性和 crash recovery 的读者有直接迁移价值。
工程实践知乎 - TencentDB腾讯云数据库
文章围绕 Agent 长任务中的短期记忆压缩问题,提出“上下文卸载 + Mermaid 无限画布”的组合方案:将完整工具结果、网页正文和日志等原始信息卸载到外部文件系统,同时用 Mermaid Flowchart 维护任务结构、状态与索引,使上下文只保留高密度摘要和可恢复入口。作者还系统比较了 Flowchart 与 StateDiagram、上下文卸载与画布的分工边界,以及从 raw 原文到 JSONL、MMD、metadata 的分层折叠/恢复路径。文章给出多组长 Session 实验结果,在 SWEbench、Toolathlon、WideSearch、AA-LCR 等场景中实现了最高 61.38% 的 Token 节省,并在部分任务上提升通过率/准确率,说明该方案更适合长任务、多工具调用和反复迭代的 Agent 场景,但对摘要质量与外部索引设计仍有依赖。
推荐收录,因为它不是泛泛介绍“省 Token”的产品稿,而是把 Agent 记忆管理拆成了可复用的工程机制:信息卸载、结构化画布、分层恢复与实验验证。对于做 LLM Agent、工具链、长上下文管理或记忆系统设计的读者,这篇文章能直接迁移其分层存储和任务状态外化思路。