V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
ch2

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

  •  
  •   ch2 · Dec 8, 2021 · 2882 views
    This topic created in 1605 days ago, the information mentioned may be changed or developed.

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

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

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

    3 replies    2021-12-08 18:15:38 +08:00
    piaoliangkb
        1
    piaoliangkb  
       Dec 8, 2021
    冷启动是从哪些方面优化的?
    starsky007
        2
    starsky007  
       Dec 8, 2021
    @piaoliangkb
    Eliminate docker cold start time by pre-start && lazy-restore mechanism
    ch2
        3
    ch2  
    OP
       Dec 8, 2021
    @piaoliangkb #1 主要是两个策略:
    1. 先启动一次,使用 CRIU 制作内存快照,在启动的时候直接还原回去(跟虚拟机启动优化是一个思路)
    2. 约定容器的端口,提前创建好 network namespace ,不再等到请求来才临时去初始化环境(由于启动参数是提前约定好的,所以可以做预创建)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2694 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 13:21 · PVG 21:21 · LAX 06:21 · JFK 09:21
    ♥ Do have faith in what you're doing.