• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

[Security and Performance] How servers should be hosted!

Gut

Collapser Zulu Creator
Joined
Jun 14, 2007
Messages
581
Reaction score
28
Location
USA
This tutorial will explain what things you should try to do and also what things you should try to avoid when hosting a server.

I will break down this tutorial into different sections covering the different areas of interest.

[Operating Systems for Servers]
I would have to say that Linux operating systems are the safest choice for hosting servers. One major thing you need to look for when choosing between different operating systems is the update frequency. Server operating system software should not be updated a lot! You should be using a stable version of Linux. You want to avoid the 'cutting edge' software if you can. Also, I would recommend not using a graphical GUI on any server (this means you would be using a single terminal instead of a desktop environment).

Recommendations for operating systems:
1.Debian Lenny (Advanced)
2.Cent OS (Advanced)
3. Ubuntu Server (Moderate)
4. Ubuntu Desktop (Noobs)

[Networking]
When hosting servers, your server will be uploading much more than it is downloading (Usually 66% Upload, 34% Download or so). Taking this into consideration, you are going to want to an internet connection that has a higher upload speed. Having a higher upload speed will allow more players on your server without lag.

For the typical OT server, you are going to have to have at least 5Mbits reserved.

[Hardware Infrastructure]
The typical rule of thumb for hosting any application that uses some sort of database is to have the database on a separate computer. This however is not going to be the case for most of you since it would require you to have multiple servers or use VMs. At any rate, you are going to want to reserve at least 2 GB of RAM for your database (size depends on your SQL server configuration).

As far as CPU's go, If you are hosting both the SQL server and the game server on one single system, try to get at least a Quad core. MySQL is a threaded application and its performance depends on the amount of threads you have (as well as how well your queries are constructed).

=========================================================================

Now that you have some background information, here is some more advanced tips on what you should pay attention to when hosting OTs.

1. Make sure your database is "defragged" every once and awhile! (You can look up how to do this on google).
2. Try to streamline your internal network so that your server has a more direct route to the WAN.
3. Using Gigabit technology for your server is recommended in most cases.
4. Make sure you set up features such as SYN Cookies and IP Table rate limiting, this will help prevent DDOS.
5. Try to be generous with RAM, if you server is using your page file...It's time to get more RAM!
6. Try to host your database on a SSD Hard Drive.
7. Do not use a standard router! Standard routers are slowww and will bottleneck your server's performance. I recommend either buying a hardware firewall (and disabling extra features) or building your own router/firewall!

[Real Life Example!]
I will give you a basic layout of how my server infrastructure is setup so you can get an idea of the ideal setup.
I have a total of 4 servers.
Server A -> Router / Firewall
Server B -> Database / Apache2
Server C -> Gameserver 1 (and eventually Gameserver 3)
Server D -> Gameserver 2

Server C and Server D have a direct Gigabit link to Server B.
Server A, B, C, and D all have Gigabit links to a Gigabit switch.
Server A connects to the WAN.

=========================================================================

[I will add more on to this tutorial as people request more information]
As an Security, IT, and Networking professional...This is my contribution to the community.
If anything on this tutorial has helped you, please REP++
 
No replys?

Anyways, I'd have to say this is pretty much 'general operating procedure' for any serious hosting of a service. You provide quite an excellent run-down of the fundamentals which will be very helpful anyone not already familiar. REP++
 
I think that people are to lazy to read this text.. But I did and I think this was a perfect way to show us how to host a server as it should be hosted!
 
Back
Top