Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
2022-03-23 Server Load
#1
A bug caused one or more servers to crash over the past few days. The bug was due to the noncombatant state of NPCs. That bug was fixed.

Load on the servers has continued to be my number one concern this week. I know there are other bugs that need attention but this one is the highest priority.

I made some giant strides toward smoothing out the servers today. Thanks for your patience if you waited through the many server restarts today. That should be all for today.

The largest contributor to the lag was due to a read/write lock on a data structure that was getting locked for write too often. The code was improved to be smarter about when to lock that lock for write.

Here is a little background about read/write locks. They are used to control access to a resource in a multi threaded environment.

Many threads can access a resource simultaneously when they lock the read/write lock for read access. The lock allows many threads to lock it for read at the same time.

However, when a thread must have exclusive access to the resource, the lock must be locked for write. Only one thread can lock the read/write lock for write at the same time. The locking thread waits for all current locks to be unlocked before the write lock is granted.

While a read/write lock is locked for write, any other thread attempting to lock the lock will wait until the write lock is unlocked.
Reply
#2
(03-23-2022, 08:50 PM)Haxus Wrote: A bug caused one or more servers to crash over the past few days. The bug was due to the noncombatant state of NPCs. That bug was fixed.

Load on the servers has continued to be my number one concern this week. I know there are other bugs that need attention but this one is the highest priority.

I made some giant strides toward smoothing out the servers today. Thanks for your patience if you waited through the many server restarts today. That should be all for today.

The largest contributor to the lag was due to a read/write lock on a data structure that was getting locked for write too often. The code was improved to be smarter about when to lock that lock for write.

Nice catch Haxus. I'm sure everyone is happy your working on server load at the moment.
Avatars: - LimboWarrior

[Image: ezgif-com-resize.gif]
Reply
#3
Ok, one more server restart today.
Reply
#4
Thank you Haxus !
[Image: unknown.png]
Reply
#5
Here is a shout out to those people using the Linux version.

For a long time the only player using a Linux build was me. I would see a Linux player online once in a while.

Lately, Linux players account for about 1 in 7 players online, sometimes as many as 1 in 6. Yay!
Reply
#6
I hope you visit us in universe after successful bug resolve!
Report or Exploit
Reply
#7
Excellent work. Thank you for continued support.
Reply
#8
Good update, haven't experienced any lag yet, gameplay is very smooth.
Reply
#9
Thank you Haxus for your hard work.
It is never easy to debug particularly when it comes to multi-threads process ;)

Btw I am a Linux user since the beginning and it is nice to have a native Linux game.
Reply
#10
(03-23-2022, 10:48 PM)Haxus Wrote: For a long time the only player using a Linux build was me. I would see a Linux player online once in a while.

I would if you were building on Debian 11.
[Image: unknown.png]
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)