A Minecraft Java server runs its main game loop on one thread, so single-core speed decides how many players and how much activity it can handle before the tick rate drops. Size RAM for the world and plugins, not for a big number on a plan. For most community servers, a high-frequency VPS with enough memory is the right start, and a dedicated server makes sense for large networks or many servers on one machine.
What drives Minecraft load
- The main tick loop. The server aims for 20 ticks per second. When a tick takes too long, players see lag regardless of how many cores are idle.
- Entities and redstone. Mob farms, item drops and complex redstone cost more CPU than player count alone.
- Chunk generation. Exploring new terrain is expensive. Pre-generating the world before launch removes much of that load.
- Plugins and mods. A heavy modpack can need far more memory and CPU than a lightly modded server.
Sizing table
| Server type | Starting memory | What matters most |
|---|---|---|
| Small private or friends server | 4 GB | Single-core speed |
| Community server with plugins | 8 to 16 GB | Single-core speed, then RAM |
| Heavy modpack | 16 GB or more | RAM and fast storage |
| Network with several servers and a proxy | 32 GB or more | Cores for separate server processes |
Give the JVM less than the machine's total memory. The operating system, the proxy and any database need their own share.
Worked example: a 30-player plugin server
Start on a 9950X VPS 32 (6 vCPU, 32 GB DDR5). Allocate around 12 to 16 GB to the server's heap, leave the rest for the operating system and backups, pre-generate the world to the border you plan to use, and watch the tick time with a profiler during peak hours. If tick time stays healthy, you have headroom. If it does not, profile before upgrading, because a single badly behaved plugin often costs more than any hardware change fixes.
JVM settings
PaperMC documents Aikar's flags, a widely used set of G1 garbage collector settings for Minecraft servers. A typical start line looks like this:
java -Xms12G -Xmx12G -XX:+UseG1GC -XX:+ParallelRefProcEnabled \
-XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions \
-XX:+DisableExplicitGC -XX:+AlwaysPreTouch -jar server.jar --noguiSet -Xms and -Xmx to the same value so the heap does not resize during play. Use the full flag set from the PaperMC documentation for your memory size.
Which StreamData product fits
| 9950X plan | vCPU | DDR5 | NVMe | Monthly |
|---|---|---|---|---|
| 9950X VPS 16 | 4 | 16 GB | 64 GB | ₹2,399 |
| 9950X VPS 32 | 6 | 32 GB | 128 GB | ₹4,799 |
| 9950X VPS 48 | 8 | 48 GB | 192 GB | ₹7,199 |
| 9950X VPS 64 | 10 | 64 GB | 256 GB | ₹9,599 |
The AMD Ryzen 9 9950X is a 16-core, 32-thread Zen 5 processor rated for boost clocks up to 5.7 GHz. A 9950X VPS receives a virtual allocation on that host, not exclusive use of all sixteen cores. See the 9950X VPS plans page.
For bigger networks or many servers on one host, the dedicated server inventory includes AMD Ryzen 9 9950X bare metal with 64 GB DDR5 and 1 TB NVMe for ₹12,999 per month, or 128 GB DDR5 for ₹17,999.
Protection
StreamData positions eligible services behind Cloudflare (Magic Transit-ready) and StormWall partner mitigation paths, chosen by route, workload and location, with a Layer 3 and 4 focus. The DDoS protection page is explicit that no provider can guarantee 100% protection, and that an attacked IP may be temporarily null-routed when traffic exceeds safe levels. Layer 7 abuse still needs rate limits, caching and application controls on your side.
Game servers attract attacks, so keep the server port the only public service, run the admin console over SSH, and put a proxy in front of multiple servers.
Before launch checklist
- Pre-generate the world to its border.
- Set view distance and simulation distance to values your hardware can sustain at peak.
- Profile ticks with players online and remove or reconfigure the most expensive plugins.
- Schedule off-server world backups and test a restore.
Frequently asked questions
Does Bedrock need the same sizing?
Bedrock Dedicated Server is a different program with different performance characteristics. Size it by testing with your expected player count rather than reusing Java numbers.
Why is my server lagging with free CPU?
Because the main loop uses one core. Other cores can be idle while that one is saturated. Profile ticks to find the cause.
Should I use Paper or Vanilla?
Paper is a popular high-performance server implementation with extra configuration for performance. Check plugin compatibility first.
How often should I back up the world?
At least daily for a busy server, stored off the machine. StreamData's backup policy leaves backups to the customer unless managed backup is ordered.