Cloud & Infrastructure
Choosing VPS specs for a small web application
Picking a virtual server is easier when you start from the application's real behavior. This guide walks through three decisions and one worked example for a small web app with modest traffic.
01
Step one: describe the workload in numbers
Write down what the app actually does. Example: a small Node.js storefront with a PostgreSQL database, a few hundred visits a day, and image uploads. Note the runtime, database, background jobs, expected concurrent users and file storage needs. Estimate memory first, since it is the most common limit: the app process, the database and the operating system all compete for it. For this example, roughly two gigabytes of memory is a reasonable starting estimate to test, not a guarantee. Record assumptions so you can compare them with measurements later and spot where your estimate was wrong.
02
Step two: match CPU, memory and storage
Translate the workload notes into a plan. For the storefront, two virtual CPU cores handle request bursts and background tasks, two gigabytes of memory covers app and database, and forty to eighty gigabytes of solid-state storage holds the system, logs and early uploads. If uploads will grow, plan to move images to separate object storage rather than buying a larger disk. Check bandwidth allowances against page weight times visits. Prefer a plan that lets you resize upward without rebuilding, so a wrong first guess costs a short maintenance window instead of a migration.
03
Step three: test, measure and set a review point
Deploy to the chosen plan and watch real behavior for two weeks. Track memory use at peak, CPU load during backups or imports, disk growth per week and response times. In the storefront example, if memory stays above eighty percent or the system starts swapping, step up one plan. If usage sits below thirty percent, you have headroom and may hold. Add a monthly calendar reminder to review the numbers, and confirm backups restore correctly. A small server is well chosen when you know why it fits and when you would change it.