We haven’t like scientifically benchmarked this, but in random observations, we have found that our NodeJS Machines start in 10ms to 600ms, with 100ms-200ms being the norm.
That one is a game-changer. For AWS.
Yes. Fly Machines are kind of SnapStarting already since the code / image is kept on the host ready-to-go (there’s no download code/image step on Fly). That said, Fly plans to improve upon their existing cold-starts by restoring from VM snapshots (aka doing SnapStart for real).
Fly Machines are great for SaaS; the only caveat is multi-tenancy in a single Fly Machine app is a bit of a hairy proposition: Machines not responding to Non Standard Ports - #23 by dfragnito
- The major one is, on Fly, you have to explicitly exit the main process with exit code
0
or it keeps running. - The other thing it is early days for Fly Machines, they’re in-preview.
- Things like
flyctl
support isn’t quite there yet (but there’s a nifty REST API at least). - Also, according to Fly docs (and in my experience too), Fly Proxy has trouble load-balancing when there are multiple VMs (of a single Machines app) running in the same region.
- Things like
- I’ve also had to deal with Zombie VMs, Ghost VMs, and Phantom VMs… It is quite something! (: I am sure Lambda has its share of quirks, too.