Sizing and Scaling
What One Instance Needs
Allow 1 vCPU and 2 GB of memory. Measured on a container limited to exactly that, serving the full documentation set for every Vaadin version in the image:
| Measurement | Value |
|---|---|
Image size | About 230 MB |
Start-up time, until the health endpoint responds | 5 seconds |
Memory in use, with all documentation loaded | 291 MB |
Search response time, p50 / p95, two concurrent clients | 8 ms / 42 ms |
Requests per second, two concurrent clients | 178 |
These are reference figures, not guarantees. They were measured on an arm64 image on Apple Silicon rather than the amd64 image you deploy, and one vCPU on a laptop is not one vCPU on a server. Measure on your own hardware before you size against them.
Adding Capacity
One instance comfortably serves a development team, so start with one.
To add capacity, run more replicas behind your usual load balancer. The server keeps no data between requests, so there’s nothing to configure: no shared storage, no session affinity, and no coordination between replicas. Each one needs the same license key, which covers any number of instances.