Good for simple stateless services (web servers, API endpoints, microservices) applications that fit the unikernel model - single-purpose, statically linked Running on one's own Xen hypervisor infrastructure.
The project started with two questions:
- How small can a deployment unit be while still supporting real service workloads?
- What if distributed systems were built from components that can be deployed quickly or dynamically relocated across a network?
Instead of large virtual machines or container images, we turned to Unikernels; tiny, and easily deployable anywhere a hypervisor runs. If deployment becomes cheap, we can rethink system design: mobile agents, compute-near-data, ephemeral tasks, dynamic composition, and so on.
Stardust lets us explore that space, and both the C and Rust versions are stable.
Stateful services are possible with Unikernels, though library porting still takes work, and there’s plenty of room for innovation around hypervisor and tooling. WebAssembly is a promising direction as well, though it would require adapting Stardust to support an appropriate runtime. Some Unikernels have already gone down that path, and there’s definitely room for more experimentation.
Not "Starrust"? What a missed opportunity...