跳到主要内容

我们如何为每个用户隔离应用实例

· 阅读需 1 分钟

为什么不能共用一个实例​

如果让所有用户共用同一个开源应用实例,会遇到:

  • 数据互相可见或写覆盖
  • 一个用户的崩溃影响所有人
  • 计费无法按用户拆分

所以 Matrix 选择 每个用户、每个应用一份实例,并通过容器调度优化控制成本。

调度服务做了什么​

  • 接收前端的 startInstance 指令
  • 在 K8s 集群里启动一个属于该用户的命名空间和 Pod
  • 启动时注入平台 API Key,以及必要的环境变量与挂载

平台 API Key 让容器内部的 AI 调用可以计入对应用户的额度。

资源回收​

  • 用户主动关停时立即清理
  • 长时间无访问时,根据应用类型自动休眠或回收

安全​

  • 不同用户的 Pod 网络隔离
  • 容器内不能访问宿主机敏感数据
  • 注入的 API Key 是临时凭据,可单独吊销
信息

我们还在持续优化 GPU 资源共享、镜像预热和冷启动速度。