High performance servers without the event loop

Stock Photo of a rack of servers


This is a slide deck that discusses the value of Go on the server:

A common refrain when talking about Go is it’s a language that works well on the server; static binaries, powerful concurrency, and high performance.

This talk focuses on the last two items, how the language and the runtime transparently let Go programmers write highly scalable network servers, without having to worry about thread management or blocking I/O.

Slide Deck Link: The Architecture of the Morrison’s OrderPad

Screenshot of slide from slide deck


This is a slide deck (itself a neat little web application) detailing the architecture of a large scale web application and the design decisions made along the way.

From the slide deck

Morrisons OrderPad is a tablet web-application that helps staff in supermarkets place orders for new stock as they walk around the store. The resulting application makes a good expositional architecture for a tablet web application backed by a lightweight java server application. We highlight the separation of application control and DOM interaction on the client, using small, focused frameworks on the server, the broad-stack testing environment, and the use of a pilot project to understand what features were needed.