Type: concept
Confidence: 0.90
Created: 2026-04-16
Updated: 2026-04-16
Tags: 技术方法论AI工程

宠物与牲畜模式(Pets vs Cattle)

概述

宠物与牲畜模式是云计算中的基础设施管理范式:宠物是有名字、需人工照料、不可丢失的个体;牲畜是无名、可互换、失败时直接替换的群体。在 Agent 架构设计中,该模式指导如何将组件从"宠物"转变为"牲畜"以实现弹性。

关键内容

两种模式对比

维度 宠物(Pet) 牲畜(Cattle)
身份 有名字、独特 无名字、可互换
失败处理 人工修复 自动替换
状态 有状态、不可丢失 无状态或状态外置
扩展 困难 容易

在 Agent 架构中的应用

Anthropic 在构建 Managed-Agents 时的演进历程:

第一阶段(宠物): - 所有组件(会话、harness、沙箱)放在单个容器中 - 容器失败时会话丢失 - 容器无响应时需人工"护理"恢复健康 - 无法调试——打开容器 shell 意味着访问用户数据

第二阶段(牲畜): - 容器变牲畜:harness 通过 execute(name, input) → string 调用容器,容器失败时作为工具调用错误返回,Claude 可重试,新容器通过 provision({resources}) 初始化 - Harness 变牲畜会话日志在外部,harness 崩溃无需存活,新 harness 通过 wake(sessionId) 重启并恢复

设计启示

将组件从宠物变为牲畜的关键是状态外置: - 容器的状态外置到会话日志 - Harness 的状态外置到会话日志 - 任何组件失败时,状态不丢失,新实例可从最后已知状态恢复

来源

该模式源自 cloudscaling.com 的 The History of Pets vs Cattle 博文,被 Anthropic 应用于 Agent 基础设施设计。

来源

相关