一个带冷启动优化的单机 Serverless 框架

2021-12-08 14:55:11 +08:00
 ch2

https://github.com/LiuChangFreeman/docker-initless
可以在 0.4 秒启动 Spring Boot(当然,仅仅是 Hello World); 0.1 秒启动 Flask

测试硬件:2 核 4g 的云服务器,没有用 Nvme SSD ,也没有用内存盘
不需要提前分配内存,有请求要处理时才启动容器,没请求时自动关容器腾出内存

写这个项目目的是啥?
——室友被面试问倒了,抽空帮他搞定这个题顺带开源出来,目前只是个 demo

2053 次点击
所在节点    分享创造
3 条回复
piaoliangkb
2021-12-08 17:11:58 +08:00
冷启动是从哪些方面优化的?
starsky007
2021-12-08 17:31:09 +08:00
@piaoliangkb
Eliminate docker cold start time by pre-start && lazy-restore mechanism
ch2
2021-12-08 18:15:38 +08:00
@piaoliangkb #1 主要是两个策略:
1. 先启动一次,使用 CRIU 制作内存快照,在启动的时候直接还原回去(跟虚拟机启动优化是一个思路)
2. 约定容器的端口,提前创建好 network namespace ,不再等到请求来才临时去初始化环境(由于启动参数是提前约定好的,所以可以做预创建)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/820869

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX