Jump to content
Sign in to follow this  
Zahj

Individual Server Performance Data Roundup

Recommended Posts


TL;DR: Poor server performance is probably why there are many issues with loot, character status bugs, and infected, but we need more data to prove it. We also need a benchmark/baseline for server performance for when we start to operate our own servers.

 

Greetings all! After gathering some info on a couple of different servers, I'd like to reach out and ask for assistance on gather a larger data set from other servers/communities. If you'd like to help or are interested in my theory as to why somethings don't seem to be working right, please continue to read on. At the bottom there is a link to a Google Sheet that server admins may use to share their collected data with me.

---

What I'm on about:

A server's performance has a lot to do with the overall health of the game that server is running. If the server is running poorly and is running low FPS (I'll explain more about server FPS below), certain functions may not be performing optimally and some tasks may not get happen at all. This may explain why we're not seeing things like loot respawning, old and ruined loot not being despawned/cleaned up, gunshots, player positioning, infected and other AI behaving oddly, and character status' not getting updated appropriately. Since most of this is speculation, I'm going to focus on the category that I'm the most certain is affected by poor server FPS; Loot.

---

Server FPS and the CLE:

Server FPS is also known as Ticks Per Second (TPS) in other games. /u/rainbowpizza did a great job of explaining this operation on the /r/DayZ subreddit 3 1/2 years ago:

Quote

It's called Ticks Per Second on Minecraft servers, which I think is a better term. A tick is just an update of things on the server; player movements, inventory actions, zombie movements. The higher TPS, the smoother the experience. A low TPS means you would experience some lag when picking up items for example. Or zombies and players don't move correctly. The environment just isn't as responsive.

Say the server is running at 50 TPS, that means every tick can be 1/50 seconds, or 20 milliseconds. The server has 20 milliseconds to check all the incoming data from clients, such as movements, items being picked up, gunshots. Then it handles the AI, updating zombie movement and such. Finally it sends all the data to the clients that are affected. This is where the network bubble is important for server bandwidth, and to prevent hacking. The server checks the location of all the events taking place within the tick, and then checks the position of the player. If the events are within a certain distance from the player, he receives the update.

All of this has to happen in 20 milliseconds. You exceed that time limit and the server will start falling behind, dropping ticks. This is why you have to balance everything so well. The zombie AI updates can't take more than 10 ms or you'd be very limited, for example.
 
 It should NOT affect client FPS like it does in Arma. TPS is only server sided.
 
This is all assuming that the network architecture is similar to that of Minecraft, which it very much sounds like.

 

A server that is suffering from poor server performance and has a low tick rate/FPS, may not be firing off all of its operations on schedule and may either fall behind, or in some cases even skip some in favor of higher priority ones. The [CLE (Central Loot Economy)](http://dayz.gamepedia.com/Loot#Central_Loot_Economy) and the closely related persistence file health have me greatly concerned as we've all seen so many examples of servers not appropriately cleaning up old loot and ruined items, not properly spawning new loot and in some instances, spawning way too much loot in a few locations (loot explosions). 

---

Why bring this up now?

To be blunt, I'm a bit concerned about how poor server performance is going to affect server owners, admins and communities once the Dev's release the server files and we are all free to host the servers on our own. Currently, a DayZ server can only be hosted by a Bohemia Interactive approved server hosting company, and we as the customers have very little control over our respective servers. This includes not knowing what kind of hardware we are paying for our servers to run on. Once we start hosting our servers on our own machines or machines that we rent and have more control over, I'm worried about how privately operated servers will run and how the Dev team will address a server's owner's concerns about low server performance.

---

What I'm asking for:

While DayZ servers are still ran by companies like Fragnet, Multiplay, Vilayer, Gaming Deluxe and others and have a mandate from BI as to what kind of hardware their DayZ servers must run, and knowing first hand what kind of poor performance our servers can sometimes be plagued with, I'd like to gather as large of a data set as possible from as many different servers. The wider the data set and the more data that we get from a variety of server hosts and locations, I think should help give us a solid benchmark to base our server performance off of once we start hosting servers independently. Having a baseline to work off of for the future should give us something to build off of and strive for when it comes to tweaking our server settings as well as something to point ot when we have to open a new support ticket about server performance.

---

Server performance monitoring!

Server owners and admins with access to their server's admin password, here is what you do to monitor your servers performance:

Server FPS monitoring can only be done from in game, so you must jump onto your server to do this.

Once in game, type `#login password` and replace password with your server's admin password.

Next, you'll type in `#monitor .5-5` the numbers after the monitor command represent how often the server will spit out a report in seconds. I use .5, you can use 5, you can go up to 60 if you wanted. 

When you are done gathering a decent set of data, type in `#monitor 0(zero)` to stop recieving reports. 

Take a screenshot of your game so you can record the data! 

Please please PLEASE! gather a ton of data for this and do it during different times. Do it when your server is at a lower population, do it during it's normal peak population. Do it right after a server reset, do it just before a rest. Try to do it just before and after a known persistence wipe! The more data that you record with accurate information, the better of an understanding you will have of your server's unique performance and the better the rest of us will understand how our servers are performing compared to other similar ones.

---

Gathering, Recording and Sharing Data.

Here is a link to a Google Spreadsheet I made up for you to record your server's data https://docs.google.com/spreadsheets/d/1LXwu98o6GxWJPRrpquj3whmvGVL8ahl-l3uy5F0Htbg/edit?usp=sharing. Feel free to alter the layout, and add more fields for more information, but please do not delete any of the fields and please do not record data without providing data for every field. PLEASE COPY THE TABLE FROM THE LINK ABOVE AND PASTE TO YOUR OWN, EDITABLE SHEET. The sheet linked above is locked and will you will not be able to edit it. You MUST copy and paste it to a Google sheet that you own.

---

If you have any questions, suggestions, comments, please comment below. If you decide that you want to help and want to report your data set to me, my email address is in the linked sheet. Please note that I do intend to publicly publish all this data once we get closer to the release of BETA. If you choose to share your data with me but do NOT want me to share your server/communities identity when I publish the data, please let me know via email when you send me your data set.


 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×