spawner VS firecracker

Compare spawner vs firecracker and see what are their differences.

spawner

Session backend orchestrator for ambitious browser-based apps. [Moved to: https://github.com/drifting-in-space/plane] (by drifting-in-space)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
spawner firecracker
6 75
451 24,084
- 1.0%
9.0 9.9
over 1 year ago 7 days ago
Rust Rust
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

spawner

Posts with mentions or reviews of spawner. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-09-10.
  • Container + SSH = a good development environment
    6 projects | news.ycombinator.com | 10 Sep 2022
    For the “jhub but for any container that speaks HTTP” use case, you might find our Spawner project interesting: https://github.com/drifting-in-space/spawner

    We don’t have a good story for volumes yet, but I’m open to ideas.

  • Are V8 isolates the future of computing?
    12 projects | news.ycombinator.com | 15 Jun 2022
    Is the appeal of isolates in this case the cold start time or the isolation? We're working on some open source infrastructure for running sandboxed (gVisor) containers on the fly from web services[1], and one of the use cases people have is serving Jupyter notebooks which seems like it might resemble your use case?

    [1] https://github.com/drifting-in-space/spawner/

  • Fly Machines: An API for Fast-Booting VMs
    3 projects | news.ycombinator.com | 24 May 2022
    yes! a fellow HN user e-mailed me about his project "Spawner"

    https://github.com/drifting-in-space/spawner

    check out the demo: https://www.youtube.com/watch?v=aGsxxcQRKa4

  • Ask HN: Who is hiring? (May 2022)
    23 projects | news.ycombinator.com | 2 May 2022
    Drifting in Space | Full-time | NYC | https://driftingin.space

    We make Jamsocket (https://jamsocket.com/), which allows application developers to spin up and connect to server-side compute. This allows browser-based applications to do computationally-intensive things that are otherwise impossible in the browser.

    We went through YC and just raised a seed round and are looking to build up our team. We are based in NYC but are open to remote for experience candidates.

    Our tech stack includes Rust, NATS, Docker, Postgres, TypeScript. We have lots of fun technical problems that get into the nitty-gritty of networking and operating systems. We are excited to build a diverse team and encourage non-traditional candidates to apply.

    Email [email protected] or see more details here: https://www.ycombinator.com/companies/drifting-in-space/jobs...

  • Launch HN: Drifting in Space (YC W22) – A server process for every user
    1 project | /r/hackernews | 28 Feb 2022
    5 projects | news.ycombinator.com | 28 Feb 2022
    Hi HN, we’re Paul and Taylor, and we’re launching Drifting in Space (https://driftingin.space). We build server software for performance-intensive browser-based applications. We make it easy to give every user of your app a dedicated server-side process, which starts when they open your application and stops when they close the tab.

    Many high-end web apps give every user a dedicated connection to a server-side process. That is how they get the low latency that you need for ambitious products like full-fledged video editing tools and IDEs. This is hard for smaller teams to recreate, though, because it takes a significant ongoing engineering investment. That’s where we come in—we make this architecture available to everyone, so you can focus on your app instead of its infrastructure. You can think of it like Heroku, except that each of your users gets their own server instance.

    I realized that something like this was needed while working on data-intensive tools at a hedge fund. I noticed that almost all new application software, whether it was built in-house or third-party SaaS, was delivered as a browser application rather than native. Although browsers are more powerful than ever, I knew from experience that industrial-scale data-heavy apps posed problems, because neither the browser or a traditional stateless server architecture could provide the compute resources needed for low-latency interaction with large datasets. I began talking about this with my friend Taylor, who had encountered similar limitations while working on data analysis and visualization tools at Datadog and Uber. We decided to team up and build a company around solving it.

    We have two products, an open source package and a managed platform. Spawner, the open source part, provides an API for web apps to spawn a session-lived process. It manages the process’s lifecycle, exposing it over HTTPS, tracking inbound connections, and shutting it down when it becomes idle (i.e. when the user closes their tab). It’s open source (MIT) and available at https://github.com/drifting-in-space/spawner.

    Jamsocket is our managed platform, which uses Spawner internally. It provides the same API, but frees you from having to deal with any cluster or network configuration to ship code. From an app developer’s point of view, using it is similar to using platforms like Netlify or Render. You stay in the web stack and never have to touch Kubernetes.

    Here's an example. Imagine you make an application for investigating fraud in a large transaction database. Users want to interactively filter, aggregate, and visualize gigabytes of transactions as a graph. Instead of sending all of the data down to the browser and doing the work there, you would put your code in a container and upload it to our platform. Then, whenever a fraud analyst opens your application, you hit an API we provide to spin up a dedicated backend for that analyst. Your browser code then opens a WebSocket connection directly to that backend, which it uses to stream data as the analyst applies filters or zooms/pans the visualization.

    We're different from most managed platforms because we give each user a dedicated process. That said, there are a few other services that do run long-lived processes for each user. Architecturally, we're most similar to Agones. Agones is targeted at games where the client can speak UDP to an arbitrary IP; we target applications that want to connect directly from browsers to a hostname over HTTPS. In the Erlang world, the OTP stack provides similar functionality, but you have to embrace Erlang/Elixir to get the benefits of it; we are entirely language-agnostic. Cloudflare Durable Objects support a form of long-lived processes, but are focused on use cases around program state synchronization rather than arbitrary high-compute/memory use cases.

    We have a usage-based billing model, similar to Heroku. We charge you for the compute you use and take a cut. Usage billing scales to zero, so it’s approachable for weekend experiments. We have not solidified a price plan yet, but we’re aiming to provide an instance capable of running VS Code (as an example) for about 10 cents an hour, fractionally metered. High-memory and high-CPU backends will cost more, and heavy users will get volume discounts. Our target customers are desktop-like SaaS apps and internal data tools.

    As mentioned, our core API is open source and available at https://github.com/drifting-in-space/spawner. The managed platform is in beta and we’re currently onboarding users from a waitlist, to make sure that we have the server capacity to scale. If you’re interested, you’re welcome to sign up for it here: https://driftingin.space.

    Have you built a similar infrastructure for your application? We’re always interested in hearing the approaches people have already taken to this problem and learning what their pain points are.

firecracker

Posts with mentions or reviews of firecracker. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-12.
  • Lambda Internals: Why AWS Lambda Will Not Help With Machine Learning
    1 project | dev.to | 25 Apr 2024
    This architecture leverages microVMs for rapid scaling and high-density workloads. But does it work for GPU? The answer is no. You can look at the old 2019 GitHub issue and the comments to it to get the bigger picture of why it is so.
  • Show HN: Add AI code interpreter to any LLM via SDK
    5 projects | news.ycombinator.com | 12 Apr 2024
    Hi, I'm the CEO of the company that built this SDK.

    We're a company called E2B [0]. We're building and open-source [1] secure environments for running untrusted AI-generated code and AI agents. We call these environments sandboxes and they are built on top of micro VM called Firecracker [2].

    You can think of us as giving small cloud computers to LLMs.

    We recently created a dedicated SDK for building custom code interpreters in Python or JS/TS. We saw this need after a lot of our users have been adding code execution capabilities to their AI apps with our core SDK [3]. These use cases were often centered around AI data analysis so code interpreter-like behavior made sense

    The way our code interpret SDK works is by spawning an E2B sandbox with Jupyter Server. We then communicate with this Jupyter server through Jupyter Kernel messaging protocol [4].

    We don't do any wrapping around LLM, any prompting, or any agent-like framework. We leave all of that on users. We're really just a boring code execution layer that sats at the bottom that we're building specifically for the future software that will be building another software. We work with any LLM. Here's how we added code interpreter to Claude [5].

    Our long-term plan is to build an automated AWS for AI apps and agents.

    Happy to answer any questions and hear feedback!

    [0] https://e2b.dev/

    [1] https://github.com/e2b-dev

    [2] https://github.com/firecracker-microvm/firecracker

    [3] https://e2b.dev/docs

    [4] https://jupyter-client.readthedocs.io/en/latest/messaging.ht...

    [5] https://github.com/e2b-dev/e2b-cookbook/blob/main/examples/c...

  • Fly.it Has GPUs Now
    5 projects | news.ycombinator.com | 13 Feb 2024
    As far as I know, Fly uses Firecracker for their VMs. I've been following Firecracker for a while now (even using it in a project), and they don't support GPUs out of the box (and have no plan to support it [1]).

    I'm curious to know how Fly figured their own GPU support with Firecracker. In the past they had some very detailed technical posts on how they achieved certain things, so I'm hoping we'll see one on their GPU support in the future!

    [1]: https://github.com/firecracker-microvm/firecracker/issues/11...

  • MotorOS: a Rust-first operating system for x64 VMs
    7 projects | news.ycombinator.com | 7 Jan 2024
    I pass through a GPU and USB hub to a VM running on a machine in the garage. An optical video cable and network compatible USB extender brings the interface to a different room making it my primary “desktop” computer (and an outdated laptop as a backup device). Doesn’t get more silent and cool than this. Another VM on the garage machine gets a bunch of hard drives passed through to it.

    That said, hardware passthrough/VFIO is likely out of the current realistic scope for this project. VM boot times can be optimized if you never look for hardware to initialize in the first place. Though they are still likely initializing a network interface of some sort.

    “MicroVM” seems to be a term used when as much as possible is stripped from a VM, such as with https://github.com/firecracker-microvm/firecracker

  • Virtual Machine as a Core Android Primitive
    2 projects | news.ycombinator.com | 5 Dec 2023
    According to their own FAQ it is indeed: https://github.com/firecracker-microvm/firecracker/blob/main...
  • Sandboxing a .NET Script
    1 project | /r/dotnet | 22 Oct 2023
    What about microVMs like firecracker?
  • We Replaced Firecracker with QEMU
    5 projects | news.ycombinator.com | 10 Jul 2023
    Dynamic memory management - Firecracker's RAM footprint starts low, but once a workload inside allocates RAM, Firecracker will never return it to the host system. After running several workloads inside, you end up with an idling VM that consumes 32 GB of RAM on the host, even though it doesn't need any of it.

    Firecracker has a balloon device you can inflate (ie: acquire as much memory inside the VM as possible) and then deflate... returning the memory to the host.

    https://github.com/firecracker-microvm/firecracker/blob/main...

  • I'm looking for a virtual machine that prioritizes privacy and does not include tracking or telemetry.
    1 project | /r/privacy | 5 Jun 2023
  • Neverflow: Set of C macros that guard against buffer overflows
    4 projects | news.ycombinator.com | 2 Jun 2023
    Very few things in those companies are being written in Rust, and half of those projects chose Rust around ideological reasons rather than technical, with plenty of 'unsafe' thrown in for performance reasons

    https://github.com/firecracker-microvm/firecracker/search?q=...

    The fact that 'unsafe' even exists in Rust means it's no better than C with some macros.

    Don't get me wrong, Rust has it's place, like all the other languages that came about for various reasons, but it's not going to gain wide adoption.

    Future of programming consists of 2 languages - something like C that has a small instruction set for adopting to new hardware, and something that is very high level, higher than Python with LLM in the background. Everything in the middle is fodder.

  • Do you use Rust in your professional career?
    6 projects | /r/rust | 9 May 2023
    https://github.com/firecracker-microvm/firecracker is the one that comes to mind, but most of these are internal.

What are some alternatives?

When comparing spawner and firecracker you can also consider the following projects:

splitter - React component for building split views like in VS Code

cloud-hypervisor - A Virtual Machine Monitor for modern Cloud workloads. Features include CPU, memory and device hotplug, support for running Windows and Linux guests, device offload with vhost-user and a minimal compact footprint. Written in Rust with a strong focus on security.

stateroom - A lightweight framework for building WebSocket-based application backends.

bottlerocket - An operating system designed for hosting containers

blueboat - All-in-one, multi-tenant serverless JavaScript runtime.

gvisor - Application Kernel for Containers

wizer - The WebAssembly Pre-Initializer

libkrun - A dynamic library providing Virtualization-based process isolation capabilities

ContainerSSH - ContainerSSH: Launch containers on demand

krunvm - Create microVMs from OCI images

llvm-project - The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.

deno - A modern runtime for JavaScript and TypeScript.