Docs

Parallel Universe

Managed hosting, a VPS or serverless? Describe your app and up to three ways to run it. kwant runs each option on your own server, load-tests it and compares it with a price estimate, so you can pick before you spend anything.

Parallel Universe comparing three ways to host an API on cost, p95 latency, ops burden and rollback, with the fastest and cheapest option marked. The figures are sample data.
A comparison of three options. The figures in this screenshot are sample data.

Options

Each option is a Docker image or a build context, with:

  • a health path kwant waits for before testing
  • your expected traffic
  • load-test settings

How a run works

  1. Options run one after another, each in its own container with resource limits.
  2. The container is on an internal network with no internet and no access to the host. Builds are offline by default.
  3. kwant load-tests it with oha, then removes the container.
  4. Results are set next to price estimates for your traffic.

Only one run happens at a time.

What the numbers mean

Every figure is tagged:

  • Verified: measured in this run.
  • Estimate: worked out from a listed price.
  • Speculation: a guess, and labelled as one.

Prices come from a table built into kwant, with dated sources for Hetzner, DigitalOcean, Fly.io and AWS Lambda. A price older than 180 days is flagged as stale.

Latency is this server's. Tests run on the machine running kwant, not at the provider, so latency tells you how the options compare, not what you'd see in production.

What it needs

  • Docker on the machine that runs kwant.
  • No cloud account. kwant never creates anything at a provider and never spends money.