Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • This is highly interesting considering AWS invented the MicroVMs for lambda, yet node on lambda is dog slow (both in latency and throughput). I can traumadump on request. I bet they could use some of this tech especially since their use cases are often not too dissimilar (auth validation, rule checking etc)
  • The next time you want to curse AWS, remember they gave us Firecracker, one of the best microvm technologies out there, and the basis of at least a few non-AWS products out there (this one being the newest entry to the list).
  • All else being equal, v8 isolates should be lower latency than firecracker.

    As they mention, the v8 latency was because the v8 runtime was hosted externally.

    Firecracker has better security model.

    This old thread[0] with kentonv author of Cloudflare's workers platform covers some of the differences.

    [0]: https://news.ycombinator.com/item?id=31740885

  • I'm having trouble understanding/believing this, given that Cloudflare Workers are also v8 isolates and run vastly faster than the 25-40ms that netlify says their isolates took...
  • > In the past, requests went out to a hosted execution service. Today, they run on MicroVMs inside our own edge network — roughly 5x faster at the median.

    So, the execution itself might now be slower as far as we know, they just eliminated some networking from the mix? Misleading.

  • If someone in Netlify is listening, could you please add support for Fetchable[1] in Netlify Edge Functions? I opened a ticket 1 week ago but it has gone unanswered[2].

    The idea behind Fetchable is to have a (semi) standard across runtimes and environments to be able to do this:

        export default {
          async fetch(req: Request): Promise<Response> {
            return new Response(`Hello, ${req.headers.get("User-Agent")}!`)
          }
        }
    
    Even Node.js, who are traditionally the laggards in these things, are already working on it and implementing it. This would be very useful for library writers like me to be able to standardize code across envrionments. I'm re-writing npm's `server` (currently WIP here [3]) and I have some ugly workarounds ONLY for Netlify Edge Functions.

    [1] https://fetchable.org/ [2] https://answers.netlify.com/t/support-fetch-for-netlify-edge... [3] https://server-js.com/

  • Alex from Unikraft here! Happy to answer any questions about the microVM part of the story from our side.

    We also did a couple of technical write ups if you're interested:

    - https://unikraft.com/blog/netlify-edge-functions

    - https://unikraft.com/customer-stories/edge-functions-netlify

  • I've been using SlicerVM extensively - which is Firecracker MicroVMs for the regular person (and for the irregular with their platform offering) - to run local 'edge' style workloads locally and securly. Agents, local dev CI, etc. It slotted in and replaced my proxmox vm orchestrator, and now I have secure and and fast vms on my laptop wherever I go. It also supports dockerfile style builds if you're wanting a security upgrade from containers (which, you should if you're using agents).

    Honestly, while I see firecracker replacing docker on the horizon I don't see firecracker replacing v8 isolates for most edge function execution. Firstly, this article's scenario is a bit unusual in that they were using someone else's isolates - so adding on a few hops; secondly isolates running JS/TS can be statically analyzed quite well, and at scale looking historically for issues and exploits, in many edge compute scenarios this is quite desirable. MicroVMs can have an awful lot more flexibility so to get the same benefit you have to really lock down what is available - the trade-offs for mid-size companies seems to benefit isolates. Obviously netlify is more than big enough and relies heavily on this that it leans in their favour.

Explore Birbla archives