Distributed systems

Wikipedia defines a distributed system as a “software system in which components located on networked computers communicate and coordinate their actions by passing messages.”

In modern world, more and more systems become distributed. Yet, surprisingly few authors write about practical architecture of distributed systems. As our Hare have architected all kinds of distributed systems, from a stock exchange to a billion-messages-a-day game, we’re in a very good position to fill this gap.

MMOG: World States and Reducing Traffic

February 1, 2016 by “No Bugs” Bunny

MMOG: World States and Reducing Traffic - Post preview image

Quote:

In practice, for most classical RPGs you can get away with simulating each of your PCs and NPCs as a box (parallelepiped), or as prism (say, hexagonal or octagonal one)

Another Quote:

Mathematically speaking, without Interest Management, the amount of data on our servers will need to send (to all players combined), is O(N^2). Interest Management reduces this number to O(N)

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System ArchitectureDistributed systemsOn.ProgrammingNetwork Programming

Read more

MMOG. RTT, Input Lag, and How to Mitigate Them

January 25, 2016 by “No Bugs” Bunny

MMOG. RTT, Input Lag, and How to Mitigate Them - Post preview image

Quote:

For fast-paced games, there is one big problem with the flow shown on this diagram, and the name of the problem is “latency” (a.k.a. 'input lag')

Another Quote:

No, better bandwidth doesn't necessarily mean better latency

Filed under: Book: D&D of MOGs1st beta of Vol. I-III1st beta of Vol. VII-IXOn.System ArchitectureDistributed systemsOn.ProgrammingNetwork ProgrammingOn.SecurityFraud Prevention

Read more

Server-Side Architecture. Front-End Servers and Client-Side Random Load Balancing

December 28, 2015 by “No Bugs” Bunny

Server-Side Architecture. Front-End Servers and Client-Side Random Load Balancing - Post preview image

Quote:

[about Round-Robin DNS] one of these returned IPs can get cached by a Big Fat DNS server, and then get distributed to many thousands of clients

Another Quote:

As a rule of thumb, Front-End Servers are a Good Thing™

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System ArchitectureDistributed systems(Re)Actors

Read more

Server-Side MMO Architecture. Naïve, Web-Based, and Classical Deployment Architectures

December 21, 2015 by “No Bugs” Bunny

Server-Side MMO Architecture. Naïve, Web-Based, and Classical Deployment Architectures - Post preview image

Quote:

If you disrupt the game-event-currently-in-progress for more than 0.5-2 minutes, for almost-any synchronous multi-player game you won't be able to get the same players back, and will need to rollback the game event anyway.

Another Quote:

However, keep in mind, that all fall-tolerant solutions are complicated, costly, and for the games realm I generally consider them as an over-engineering (even by my standards).

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System ArchitectureDistributed systems(Re)Actors

Read more