Running your own Minecraft Server.
You have decided to that you want to host your own Minecraft server. Good for you! There are several things that is important for your server to become a success. You should decide if you want to host it yourself, or you want to have it hosted online in a professional hosting center.
Hosting it yourself at home or at work
If you decide to host it yourself, you should consider a few things.
Do you have the right hardware / server to host it on?
Do you want to have your server to run on all hours of the day and night?
Do you have a beefy enough internet connection?
Is your internet connection stable enough?
You should also consider how many players you want to be able to have online at the same time. This can be limited by all of the above points.
I will go into more details and give you an idea of what you want, and help you decide on the right solution for you and your players.
Do you have the right hardware / server to host it on?
If you plan on hosting it from the same computer that you use daily to play games on, and for general daily usage. You should reconsider if this is what you want.
You will limit yourself in what you can do with your computer at the same time as hosting a Minecraft Server.
If you play other games on the computer, it might interfere with how well the Minecraft Server runs. And how bad it performs.
I will highly recommend against using your home computer for hosting anything. Except for one off gaming sessions with friends.
You should preferably have a dedicated computer to host it on, and you should make sure that it is up for the task of running 24/7 to provide the best experience for the players.
The computer should have a sufficiently beefy processor, that excels at singlethreaded performance. It is not about how many cores you server has, but how it uses those cores it has.
Minecraft and java applications in general are almost always exclusively single threaded in operation, and this means that the Minecraft Server will mostly only utilize one of your cores on the CPU.
So for a home computer, then a good Intel Core i7 should be able to do the trick.
A good source to find out what processor has the best single threaded performance is to look it up in PassMarks CPU Benchmark website, which can be found at this address:
What about memory?
Next you should make sure that you have enough RAM, and that it is as fast as possible.
It is not unusual for a Minecraft server to use more than 10GB RAM, and you will still need some extra RAM for the operating system.
So at least 16GB RAM would be a good choice.
If you decide to use some of the more sophisticated optimizations, and run the full Minecraft Server from a RAM Disk, you should make sure that the Minecraft folder and all the world folders and plugin folders also fits in the amount of RAM you have available. A RAMDIsk of 6GB + 10GB for the Minecraft Server + additional RAM for the server operation system would push up above a usage of close to 20GB or more.
And very importantly, you should be able to run everything without the use of a pagefile. Since the use of pagefile could simply crush your servers performance.
Selecting the right Storage.
Storage has a big impact on how many players your Minecraft Server will be able to handle simultaneously.
So you should go for a fast and reliable storage medium, like an SSD and preferably even an NVMe based SSD. And if possible I would recommend looking into getting a RAID setup to protect your server from failing storage mediums.
And always remember to make backups to somewhere else, that is not on the same computer!!
If you are not able to run your Minecraft Server from SSDs, you could consider the more sophisticated solution of running it from a RAM based drive. But this requires that everything is setup correctly and you know what you are doing. And you are doing it right. And always makes sure to have a script or program to make backups of the RAM drive, and be able to rebuild the RAM drive after a powerdown or crash. This is for advanced use only!
What about a real server?
If you are able to get hold of a real enterprise server which are made for running 24/7 under full load, this would be the best solution, as long as you go by the same guidelines as above. Here you would most likely be looking at a XEON based processor. Just remember.. it’s not the amount of cores that counts, it’s how it is USED. So lookup the processor in the list on PassMarks CPU benchmark list for Singlethreaded performance here:
Is your Internet connection up for it?
Now we will look at what internet connection you will need to be able to host a Minecraft Server.
From my experience, it does matter much, as long as you have a fast connection with enough uplink speed.
Each player connecting to your server consumes an amount of bandwidth and it would be good to have an at least 100Mbit connection, but it all comes down to the amount of simultaneous players on your server.
Another thing to take into considering, is what are you using your internet connection for, besides hosting your Minecraft Server.
If the internet connection is shared with a full family where each member is using the internet, for either gaming, streaming or just browsing, it can be difficult to say exactly how much bandwidth you want to go for. But 100Mbit should get you a long way. AND REMEMBER UPLINK SPEED is most important for your server.
Hosting in a hosting center.
If you are dedicated enough to host a good server for your players, you should consider going with hosting your server in a hostingcenter.
This should ensure you a reliable uptime and a good performing internet connection.
There are several hosting centers around the world, and you should decide on where the majority of your players are located, and see if you can find a hosting center that is well connected to the internet, and where your ping times are low.
When you host your server at a hosting center, you have a few options to choose from:
Here you set up your own physical server at the hosting center, and typically pay for physical space used by the server, and power and internet usage.
Virtual Server (Or VPS)
A virtual server is where you get a part of a larger server, and have to share the hardware resources with other users.
Here you typically rent a fully dedicated server, and you set up all the software yourself, and you are the admin in charge of keeping everything updated and secured. Normally the hosting center makes sure the hardware is ok, and handles any hardware failure for you. But it all depends on the contract with your hosting center.
Managed dedicated server
This is like the dedicated server, except that you pay the hosting center to take care of managing the operating system and most, if not all of the software. But as with the dedicated server, it all comes down to what is in your contract.
Slot-based managed servers
This is typically a game specific host, which has a dedicated interface for you to manage your Minecraft instance, and you pay for the number of players that you can have on your server.
There is very little room for optimizing here, as you have to rely on the hosting center to do all the work with keeping stuff optimized.
If you are serious about running your own Minecraft Server, and plan on getting as many players as possible, I recommend getting a dedicated server in a hosting center, and make sure you get one with a good Xeon processor, and at least 64GB DDR4 RAM and if possible NVMe based storage in RAID.
And you should look at using a Minecraft server setup based on a Bungeecord setup to spread the load on several Minecraft Server instances, and if possible, on several physical servers at the same hosting center.
And make sure the hosting center is well connected to the world, and has the state of the art DDoS protection.