Skip to content

[P3][T28] 增加 Redis 共享租户与模型配额、预算和扩缩容信号 #18

Open

Description

@Aias00

目标

限制单租户和 provider 压力,多 Worker 扩容不能绕过并发、调用与成本限制。

优先级与归属

范围与落地方案

  • 实现租户/provider/model 并发与 rate/token/cost 预算 reservation/release,复用 durable usage。
  • 区分 Worker 并发、图内并行、工具并行和逻辑 waiting run;提供公平准入、backpressure 与指标。
  • 以 backlog age/runnable count/lease occupancy/latency 给出扩缩容信号与 provider/Redis 容量上限。

前置依赖

验收条件

  • 多 JVM 同时申请预算不能超额或重复释放,进程退出后额度按明确协议核对。
  • 租户 A 饱和不占用全部租户 B 容量,预算恢复不归零。
  • child delegation 不能凭派生 run 获得新额度;waiting run 不错误占据物理 Worker slot。
  • drain/scale-in 停止新领取且不删除 IN_DOUBT 数据,指标能区分存量等待与真实执行。

非目标

  • 不实现云平台 autoscaler 或实际计费系统,不凭未经负载验证的吞吐量宣称容量。

兼容与验证约束

  • Java 17;新增路径显式启用,保留既有 API、默认行为、checkpoint/Store 格式及配置前缀。
  • Core 不引入 Redis/Extensions 依赖;存储实现归 Extensions,应用接线归可选运行层。
  • 首阶段无 MQ、整 Run Worker,不做节点分片,不承诺通用 exactly-once 或 Redis HA RPO0。
  • 先用模型无关单测/reference 验证本任务,再按范围运行现有 API/格式门禁;涉及 Redis 用真实存储测试,涉及接管用独立 JVM。

当前实现依据

分析基线:Core 6324f53、Extensions ed07835;AgentScope 参考 c95eb1f。本 Issue 是待完成任务,不代表能力已经实现。

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpriority/backlog待排期:已纳入积压列表,按资源安排处理

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions