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.

Scaling Stateful Objects

June 27, 2017 by “No Bugs” Bunny

Scalability Fairy

Quote:

it is DB which is usually The Bottleneck™ – it means that we’re saving this enormous amount of load, exactly where it really matters.

Another Quote:

as discussed above, the real-world task is always about scaling the whole system, including database; and in this regard Stateless-App-based systems exhibit significant problems.

Filed under: Book: D&D of MOGs1st beta of Vol. VII-IXOn.System ArchitectureDistributed systems

Read more

Gradual OLTP DB Development - from Zero to 10 Billion Transactions per Year and Beyond

December 13, 2016 by “No Bugs” Bunny

10 transactions per second to 10K transactions per second

Quote:

to make an efficient representation usable for OLAP – we need to modify our data on its way to OLAP replicas

Another Quote:

Each of the DB Server Apps is a replica master, but all replica targets are within the same Replica DB

Filed under: Book: D&D of MOGs1st beta of Vol. IV-VIOn.System ArchitectureDesign decisionsDistributed systems(Re)Actors

Read more

Deterministic Components for Distributed Systems

August 22, 2016 by “No Bugs” Bunny

Schrödinger's Cat

Quote:

Then you can recover from any single server failure in a perfectly transparent manner

Another Quote:

after the program fails in production, we can get the input log and run it in the comfort of a developer’s machine, under a debugger, as many times as we want, and get exactly the same variables at exactly the same points as happened in production

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

Read more

Network Programming: Socket Peculiarities, Threads, and Testing

May 9, 2016 by “No Bugs” Bunny

Socket Peculiarities

Quote:

I am not saying that this architecture is the only viable one, but it does work for TCP for sure (and performs reasonably well too)

Another Quote:

The whole task of optimizing performance beyond, say, 20-50K packets/second per box tends to be Quite Elaborated, and involves quite a few things which are platform- and hardware-dependent.

Filed under: Book: D&D of MOGs1st beta of Vol. IV-VIOn.System ArchitectureDistributed systemsOn.ProgrammingTips and TricksNetwork Programming

Read more