On.System Architecture

System Architecture (and it’s subfield Software Architecture) is a discipline which is surprisingly poorly covered. In a sense, it is still more an art than a science, and usually requires somebody intimately familiar with practical systems, to tell what’s to do and what’s to avoid when building a system.

IT Hares have lots of experience in both Software Architecture and more general System Architecture, and are trying to share their knowledge (and more importantly, their feelings) about them.

Part V: UDP of 64 Network DO's and DON'Ts for Game Engines

June 29, 2015 by “No Bugs” Bunny

UDP: no warranties of any kind

Quote:

In general, lag and jitter are not specific to UDP, and manifest themselves for absolutely any Internet connection.

Another Quote:

If you need a globally-reachable server with single-digit-ms lag for all the players, it is simply not possible

Filed under: On.System ArchitectureDistributed systemsOn.ProgrammingNetwork Programming

Read more

Part IV: Great TCP-vs-UDP Debate of 64 Network DO’s and DONT’s for Game Engines

June 22, 2015 by “No Bugs” Bunny

Tug of War: TCP vs UDP

Quote:

Why bother with UDP at all? The answer is simple: there is a price tag attached to the TCP goodies.

Another Quote:

Implementing your own reliable-delivery protocol over UDP is extremely complicated, time-consuming, and error-prone.


Filed under: On.System ArchitectureDistributed systemsOn.ProgrammingNetwork Programming

Read more

Part IIIb: Server-Side (deployment, optimizations, and testing) of 64 Network DO's and DONT's for Game Engines

June 15, 2015 by “No Bugs” Bunny

Menu: Java.Thread with a Side of synchronize, C++ boost:: Mignon, 3NF à la Codd, Ruby Thermidor

Quote:

If your game is the only one working when all the competition is down, it improves user perception about your app a lot.

Another Quote:

Most importantly, however, this approach allows to keep your players happy – and this is one thing which really matters

Filed under: On.System ArchitectureDistributed systemsOn.ProgrammingNetwork Programming

Read more

Part IIIa: Server-Side (Store-Process-and-Forward Architecture) of 64 Network DO's and DON'Ts for Game Engines

June 8, 2015 by “No Bugs” Bunny

Incoming queue: cake. Processing: restaurant table. Outgoing queue: WC.

Abstract:

A Panegyric to Store-Process-and-Forward architecture

Quote:

"With proper logging, in most cases a bug can be found from one single crash/malfunction.

Filed under: On.System ArchitectureDistributed systems(Re)ActorsOn.ProgrammingNetwork Programming

Read more