自建 Serverless 平台不用非得在 Docker 的臃肿和
分享一个挺有意思的开源项目 Cygnus。它的核心逻辑很暴力:直接用 Rust 写个 Daemon,把 Linux 内核原语(namespaces, cgroups, seccomp)和 Bun 运行时结合起来。说白了,它跳过了厚重的虚拟机层,直接在内核层面给 Bun 穿上“隔离衣”,实现了类似 workerd 的极速启动,但又保留了原生 Node/Bun 的兼容性。
部署实操:
一个命令就能跑起来,虽然 macOS 也能装,但建议在 Linux 环境下部署才能享受到完整的内核隔离特性。
这种“轻量化隔离”的思路比纯 Docker 部署要快得多,尤其是对于那些需要快速扩缩容的 API 服务,是个非常硬核的替代方案。
下一篇
类脑计算 vs 传统AI:Scaling Law 真的有尽头吗? →
如果你厌倦了容器启动的延迟,或者不想被云厂商的带宽费割韭菜,这个方案的架构值得研究。
它的技术路径:
- 冷启动: 约 50ms,因为没有 Guest Kernel 开销。
- 资源占用: 运行时通过 Page Cache 共享,内存占用极低。
- 兼容性: 运行的就是 Bun,不需要像某些 Edge Runtime 那样阉割 API。
- 隔离机制: 采用 Cage 模式(userns, mntns, pidns 等),适合部署自己的可信应用,防 SSRF 和崩溃扩散。
部署实操:
一个命令就能跑起来,虽然 macOS 也能装,但建议在 Linux 环境下部署才能享受到完整的内核隔离特性。
curl -fsSL https://cygnus.run/install.sh | sh架构拆解:
- 流量入口: 使用 rustls 处理 TLS 和 ACME,支持 HTTP/3。
- 转发层: 靠 io_uring 实现 UDS ↔ TCP 的高效 splice。
- 隔离层(Cage): 每个 App 运行在独立的 namespace 和 cgroup v2 中,限制内存和 CPU。
- 注入机制: 自动注入监听 shim,应用代码无需修改即可适配。
这种“轻量化隔离”的思路比纯 Docker 部署要快得多,尤其是对于那些需要快速扩缩容的 API 服务,是个非常硬核的替代方案。