最低资源要求
托管在 Square Cloud 平台上的每个项目都有特定的最低资源要求,以确保最佳性能:- 机器人: 至少需要 256 MB RAM。
- 网站: 至少需要 512 MB RAM。
- 缓存数据库: 至少需要 512 MB RAM。
- 通用数据库: 至少需要 1 GB RAM。
为什么会有 RAM 最低要求?
容器有强制性的运行开销:语言运行时、操作系统库和网络缓冲区。低于 256 MB 时,内核的 OOM Killer 往往会在启动或垃圾回收期间终止进程,从而使应用无法正常运行。 技术影响:- 每个容器占用 1 个动态 IPv4 和 NVMe 存储 IOPS
- 最低分配可防止资源碎片化(吵闹邻居效应)
- 每日 snapshot 公式:
(Total RAM / 256) * 2(近似值;在更高等级套餐上,实际每套餐的额度可能更低)
影响数据: 在实施 256 MB 最低限制后,应用稳定性大幅提升,因 OOM(内存不足)导致的崩溃率降低了 97.7%。
CPU 分配
简而言之:CPU 根据所配置的 RAM 进行分配。增加 RAM 通常会获得更多的 vCPU。规则
单 vCPU 套餐
1 vCPU 套餐上的应用可获得全部容量,不受限流。多核套餐(≥2 vCPU)
- 性能下限:拥有 ≥512 MB RAM 的应用至少获得 2 个 vCPU。
- 按比例扩展:
- Hobby(≤2 vCPU):每 512 MB RAM +1 vCPU
- Standard / Pro / Enterprise:每 1 GB(1024 MB)RAM +1 vCPU
示例
限流与安全限制
系统会强制执行套餐的 vCPU 限制,并通过均衡处理来保持分配公平。短期弹性可能在突发流量期间授予额外的 vCPU,但不作保证。
禁止的 CPU 用途:
- 加密货币挖矿
- 未经授权的、不受限制的密集型 ML 工作负载
- 蓄意的资源滥用
LACK_OF_CPU 状态并立即被停用。
网络限制
带宽随 RAM 扩展:每 256 MB RAM +50 Mbps。
如需超过 2000 Mbps 的带宽,请联系支持团队。
存储限制
所有项目默认获得 10 GB NVMe 存储。 特性:- 企业级 NVMe
- 在多次 deploy 和重启之间持久保留
- 高 IOPS 和高吞吐量
超出限制的状态
LACK_OF_RAM
触发时机:应用超出所分配的 RAM,或内核发出 OOM 信号。 处理动作:立即终止进程以保护宿主机稳定性。 如何修复:- 使用性能分析工具查找内存泄漏(Node.js:
--inspect,Python:memory_profiler)。 - 减少内存中的缓存,或将缓存迁移到 Redis。
- 在控制面板中增加所分配的 RAM。
LACK_OF_CPU
触发时机:持续的 CPU 使用超出该分配的合理限制。 处理动作:进程以LACK_OF_CPU 状态被终止。
如何修复:
- 分析 CPU 热点(Node.js:
0x,Python:cProfile)。 - 优化热循环、数据库查询和 I/O 密集型操作。
- 增加 RAM 以获得更多 vCPU(见 CPU 分配表)。
- 将繁重的工作卸载到异步 worker 或批处理作业。

