Server performance settings

Posts: 452
Joined: Tue Apr 19, 2011 10:10
GitHub: celeron55
IRC: celeron55

Server performance settings

by celeron55 » Fri May 04, 2012 10:45

Just thought this would be useful for many: You can lower the server CPU and bandwidth usage a lot by fiddling around with the configuration, this post presents several options of combinations you can use.

These are designed for a Pentium 4 machine (slow) with 1GB of RAM (enough) and an ADSL connection (very slow). Consider carefully before pasting these into your config.
I used these settings on the server, until I shut it down when I got fed up with griefing:
Code: Select all
max_block_send_distance = 6
max_simultaneous_block_sends_per_client = 1
max_simultaneous_block_sends_server_total = 20
active_block_range = 1
server_map_save_interval = 15.3

These are the settings you're most likely going to want for e.g. a VPS.
If you have a high-end VPS or dedicated server, this section is not for you.
Code: Select all
max_block_send_distance = 8
max_simultaneous_block_sends_per_client = 5
active_block_range = 2
server_map_save_interval = 10.3

Keeping the default settings is fine for singleplayer or hosting on decent machines.

This setting is the most obvious one. Increase if you want to give your players a wider view of the world from standstill, decrease if that causes too much bandwidth usage.
Code: Select all
max_block_send_distance = 9

You can limit the amount of processing caused by ABMs and entities by lowering this setting:
Code: Select all
active_block_range = 3

If you have plenty of bandwidth at your disposal, you should use something like this to fully utilize it with a large amount of players (this might be set as the default in later versions):
Code: Select all
max_simultaneous_block_sends_server_total = 10000

You should lower this value if your players use slow computers, or raise it if they use fast computers:
Code: Select all
max_simultaneous_block_sends_per_client = 10

This will increase the writing speed of sqlite by 15 times to slightly more than that of leveldb, by disabling part of the nuclear bomb proof write checking. This is not the default setting because nobody knows how unsafe it is. Probably not at all.
Code: Select all
sqlite_synchronous = 0

This of course isn't everything you can do. Check out minetest.conf.example for every engine setting out there.
Last edited by sfan5 on Sun Apr 23, 2017 10:06, edited 2 times in total.
Reason: Restructuring: 3 "presets" with descriptions which specs they are intended for

Return to Servers

Who is online

Users browsing this forum: No registered users and 4 guests