For WooCommerce, a stable combination such as 4 cores and 8 gigabytes of RAM is not a public answer. A store with 10,000 products and a high page cache may be lighter than a small store with dynamic pricing, heavy filters, and hundreds of simultaneous checkouts. Server selection should start with the workload, support level, and recovery goal, not product number or ad plans.
Short answer:Measure dynamic request rates, PHP, Query and I/O time, concurrent users, order per minute, and side services. Then select the CPU, RAM, storage, network, and database capacity with a secure edge. If you don't have a system management team, a raw VPS with even more resources can be more risky than a managed host.
Questions before buying
- How many requests pass through page cache?
- When is the traffic peak and order?
- How many external APIs does Checkout have?
- How many variations and filters does the catalog have?
- When will import, backup and report be executed?
- What is RPO and RTO?
- Who manages patches and incidents?
CPU, more cores are not always faster.
PHP requests run on separate workers and concurrency benefits more from the kernel, but the single-core speed is important for long requests. Query, compression, and background job compete with CPUs. The number of vCPUs without knowing generation, share, and noisy neighbor is not comparable.
Budget RAM between services
The operating system requires PHP-FPM, MySQL, Redis, web server, and memory monitoring. Worker increases the consumption. The goal is not just to prevent OOM; the database must have a proper buffer and the system should not be loaded with swap.
Storage and IOPS
Order recording, session, log, image import and backup are all dependent on storage. SSD/NVMe tags are not enough; latency, stable IOPS, throughput, quota, and snapshot are important. Close-up disks are full, inode completed, or backup slows down the store at the same time.
Database on the same server or separate?
For smaller workloads, space is also simpler. As it grows, the competition of resource separation and failure domain changes, but network latency adds cost and complexity. Measure Query and I/O before separation; poor Query transfer does not fix it.
PHP Worker and Capacity
Each dynamic checkout requires a real worker. If everyone is busy, the request stays in line even if the cache output is fast. The number of workers must be aligned with the request duration, concurrency, and RAM of each process.
MySQL and the real query
See CPU database, buffer hit, connection, lock, temporary work, and slow query. Database volume or product number alone does not determine the size of the server. N+1 and the filter without indexing waste any hardware.
Redis, part of the capacity, not the obligation.
Object cache in the repeat reading workload may reduce the database load, but it requires RAM, monitoring, and failure behavior. If the API is slow or Query is unique, the effect is limited. Make the decision with hit/miss, eviction, and baseline.
When is it enough?
For a low-traffic store with limited plugins and support, it may be enough. Ask for clear process, worker, cron, database, SSH, and noisy neighbor limitations.It's a review of roles in slowdown.It explains the method of proof of limitation.
When is VPS reasonable?
The need to configure PHP/DB, real cron, sidestepping, monitoring and isolation are valid reasons. VPS also transfers patch, firewall, backup and on-call responsibilities.Transfer from shared hosts to VPS.It perfected the standards.
Managed or unmanaged?
| Choice | The advantage. | Hidden costs |
|---|---|---|
| It's managed. | Simple operation and support | Limited control. |
| VPS managed | Control is responsible for the operation. | Dependence on the SLA |
| Raw VPS | Full flexibility. | Security and on-call with you. |
| I'm not sure. | Scale and isolation | Complexity and Cost |
Network and user location
User latency affects the source, DNS, and CDN. The CDN approaches the asset and public page, but Checkout and API are linked to the source and gate. Measure the location of the data center with users, gateways, data rules, and operational access.
Stability and backup
Snapshot does not replace standalone backup and restore testing. RPO is the amount of data that can be lost and RTO is the recovery time. The database and media must be backed up compatible. Replica and HA without failover test are just an extra cost.
Security and day-to-day operations
Patch, SSH key, limited access, firewall, TLS, secret management, log rotation and monitoring are all part of the operating capacity. A fast server without a patch or backup is not suitable. Compare on-call costs and incident response time.
Calculate the total cost of ownership
Add backup and storage, output traffic, IP, panel license, email service, monitoring, patch time and on-call. A low-cost plan that requires a few hours of technical effort per incident may cost more than the managed option.
In contrast, a managed service that does not provide log access, export or adjustment will also incur migration and limitation costs.
Determination of initial capacity
- Add the current metric and the peak scenario.
- Measure PHP usage and query time.
- Calculate the cache hit and dynamic ratio.
- Run a load test in stages.
- Find the saturation point.
- Add the growth and failure margin.
- Check it out after you're settled.
Scale Up or Scale Out?
Increasing the resources of a single server is simpler and is usually the first step. Multi-node requiring shared session/cache, coordinated media, load balancer, and deployment is compatible.
Safe margin and headroom.
The server should not be constantly near the roof in normal traffic. Headroom is required for spike, cache miss, backup and failure of a worker. There is no fixed global percentage; consider scale time, workload fluctuations and fixed cost.
If CPU usage is low but PHP queue is high, the request may be waiting for I/O or API. If RAM is free but storage latency is mutating, purchasing RAM is no longer a priority.
Measurement of consumption per request
Do not take the average PHP memory from a cached page. Profile the product, search, and checkout separately and count the consumption pic in the worker budget. Memory leak or a plugin that weighs the response is only seen later by adding RAM.
Staging environment and its cost
Staging doesn't always have to be the same as production, but limitations should be known for load testing. Using a small database optimises the results of Query. Do not copy customer data without anonymizing and place the actual email/port in an inactive staging or sandbox.
Locked to the provider.
Managed service can be valuable, but check the export path of the database, media, DNS and backup from the beginning. Exiting the provider should not be dependent on a dedicated format without recovery tools. Consider the excess, snapshot and IP costs in the migration plan.
The growth rate is also increasing.
The right size today is not a guarantee for the next six months campaign. Review the order process, catalog, variation, database, media and jobs monthly or after important releases. Capacity metrics should be updated based on workload changes, not just on a fixed basis.
Special sale wants a safe margin separated.
The average capacity is not a campaign metric. Consider spike, cache stampede, retry and post-order jobs.Preparing for a special saleIt covers the runbook and the runtime.
Common Mistakes
- Selection by product number
- Comparison only vCPU and RAM.
- Worker growth without memory.
- Raw VPS without operational responsibility.
- Ignoring storage and backup
- Scale before the bad query is resolved.
- Trust in the benchmark is unmatched.
When do you need special assistance?
If the server selection is tied to migration, special sales or multiple nodes, a cost estimate or a definite estimate is made.Support for the WooCommerceIt can measure workload, PHP, database and payment and offer a suitable architecture.
Common Questions
How many gigabytes of RAM is it?
Depends on the worker, database, Redis, traffic and process size; a constant is not defensible.
Serving Iran or abroad?
Measure the user, gateway, external service, rules and quality of the route.
Do you need a dedicated server?
Not necessarily; workload and isolation/operation requirements are determining.
Cloud or VPS?
The cloud is more flexible, but complex and costly. Compare availability, teamwork, and growth.