Actor 删除之后发生了什么?Agent Substrate 快照垃圾回收现状与规划全解析
Actor 删除之后发生了什么Agent Substrate 快照垃圾回收现状与规划全解析【免费下载链接】substrateAgent Substrate: the core system项目地址: https://gitcode.com/GitHub_Trending/substrate7/substrateAgent Substrate 是面向 Agent 的高密度沙箱执行运行时。当你删掉一个 Actor 后它留在对象存储里的快照内存 磁盘状态并不会自动消失。本文带你梳理Agent Substrate 中Actor 删除的完整流程、快照垃圾回收snapshot garbage collection现状以及 Roadmap 里规划的自动清理能力帮你彻底理解这套系统的状态生命周期。为什么删 Actor不只是删一条记录在 Agent Substrate 里一个Actor是 ActorTemplate 派生出的运行实例。它的状态分为两类内存快照Memory Snapshot进程精确的 RAM 状态工作卷 / 磁盘Working Volume容器可写层里的文件两者被打包成一个版本化快照持久化在对象存储GCS 或 S3中。也就是说每个 Actor 背后可能挂着几百 MB 甚至几 GB 的快照数据。因此删除 Actor本质上要回答两个问题控制面里的记录如何干净地移除对象存储里的快照字节如何回收Actor 删除的完整流程现状删除入口在控制面的 DeleteActor 工作流中整个过程是幂等的可分七步步骤做什么关键方法① 标记删除把 Actor 与其卷置为DELETINGensureMarkedDeleting② 终止负载通知节点上的 atelet 结束沙箱进程ensureAteletTerminated③ 解挂卷卸载外部卷ensureVolumesDetachedForDelete④ 释放 Worker把 Worker 归还到 WorkerPoolensureWorkerReleased⑤ 删卷删除 Actor 的外部卷ensureVolumesDeleted⑥ 释放快照删除对象存储里 Actor 的快照前缀ensureExternalSnapshotsReleased⑦ 收尾从数据库删除记录finalizeDeleted关键设计尽力而为 可重试。任何一步失败都会把错误返回给调用方重试而 Actor 记录会留在库里保持DELETING状态等待下次重试补齐。这正是快照垃圾回收现状的核心——清理依赖工作流被反复驱动而不是一个独立的后台 GC 进程。快照垃圾回收是怎么做的现状快照回收的具体动作在 ensureExternalSnapshotsReleased先通过 actorSnapshotStoragePrefix 算出这个 Actor 自己写过的所有对象的前缀——包括它上一次拍的快照、悬停中写到一半的快照以及崩溃时遗留的快照。再调用对象存储的 DeletePrefix把这个前缀下的对象逐个删掉并发 8。这里有一条精妙的所有权规则一个 Actor同一时间只拥有一个它自己的快照。如果快照是从某个 Tag 借来的Tag 是快照的保留锁见 架构文档 Phase 3它归 Tag 所有不会随 Actor 删除而被删。换句话说Tag 比 Actor 活得久被 Tag 固定的快照会留存。当前的边界与缺口诚实地说Agent Substrate 目前没有独立的快照垃圾回收器。清理逻辑内联在删除工作流里且源码留下了明确的 TODO// TODO: Ensure GC collects all the remaining resources if the cleanup fails.—— workflow_delete.go由此暴露出几个现实缺口⚠️失败残留若清理中途失败且不再重试对象存储里可能残留孤儿快照。⚠️无后台 GC没有周期性扫描哪些前缀已无人引用的机制。⚠️无 TTL / 保留策略快照缺少存活多久后自动回收的概念。这些正是 Roadmap 要补的部分。未来规划从 Roadmap 看垃圾回收的下一步docs/roadmap.md 里有几项直接对应当前缺口存储StoragePolicies to drive retention of old snapshots and controller(s) to do automated cleanups即引入快照保留策略并配套一个控制器做自动清理。Actor 管理ComputeAutomated Garbage Collection: Background cleanup of idle actors based on configurable TTL即按可配置 TTL对空闲 Actor 做后台自动垃圾回收。生命周期澄清Clarify the actor lifecycle, including what data is retained across which events即明确哪些事件会保留哪些数据让快照保留变得可预期。整体方向是把删除时顺带清理升级为策略驱动的、控制器化的、带 TTL 的自动 GC。新手上手如何观察一次 Actor 删除用 kubectl-ate 触发删除再观察控制面的状态流转即可。参考 架构文档 Phase 4: Deletion默认只有ACTOR_STATE_SUSPENDED或ACTOR_STATE_CRASHED状态的 Actor 可被删除。打开any_state标志后任意状态含RUNNING、PAUSED都能直接删——工作流会先终止容器、解挂卷、释放 Worker再删记录。删除成功后Actor 的快照状态即被垃圾回收。小结✅现状Actor 删除时的快照回收内联在幂等工作流里按前缀删除清理对象存储并尊重 Tag 的所有权。✅可靠性靠尽力而为 重试保证最终一致失败会停在DELETING状态等待重试。规划Roadmap 已明确要引入保留策略 后台 GC 控制器 TTL让快照垃圾回收从顺手清理走向自动治理。理解这一层你就抓住了 Agent Substrate 状态生命周期管理的关键计算资源靠 Worker 快速复用而真正的垃圾回收战场在对象存储里的快照。【免费下载链接】substrateAgent Substrate: the core system项目地址: https://gitcode.com/GitHub_Trending/substrate7/substrate创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

uni-app(uni-app-x)自定义导航栏组件 uni-nav-bar 完全指南:安全区适配、三区布局与 slot 扩展

uni-app(uni-app-x)自定义导航栏组件 uni-nav-bar 完全指南:安全区适配、三区布局与 slot 扩展

uni-app(uni-app-x)自定义导航栏组件 uni-nav-bar 完全指南:安全区适配、三区布局与 slot 扩展 【免费下载链接】uni-app A cross-platform framework using Vue.js 项目地址: https://gitcode.com/gh_mirrors/un/uni-app uni-nav-bar…

2026/10/20 19:35:05 阅读更多 →
SSA优化CNN-LSTM-Attention的多变量回归预测实战解析

SSA优化CNN-LSTM-Attention的多变量回归预测实战解析

简介:一份基于麻雀搜索算法(SSA)优化CNN-LSTM-Attention的多变量回归预测完整项目实例技术文档,适合具备一定Python基础、从事数据科学或人工智能开发的工程师与研究人员,内容从项目背景、目标意义、挑战与方案切入,详细讲解模型架…

2026/10/29 22:22:15 阅读更多 →
RPCS3 中文补丁完整配置指南:4 个步骤搞定 PS3 游戏汉化

RPCS3 中文补丁完整配置指南:4 个步骤搞定 PS3 游戏汉化

RPCS3 中文补丁完整配置指南:4 个步骤搞定 PS3 游戏汉化 【免费下载链接】rpcs3 PlayStation 3 emulator and debugger 项目地址: https://gitcode.com/GitHub_Trending/rp/rpcs3 RPCS3 是 PlayStation 3 游戏模拟器,自带的补丁系统可以给游戏文本…

2026/10/15 7:16:58 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/10 23:32:01 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/10 23:32:03 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/11 2:31:33 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/11 17:16:37 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/11 17:16:37 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/10 23:32:10 阅读更多 →

日新闻

周新闻

月新闻