Nitro goes Reactive

The Need to Go Reactive

Over the last several years, through several technology re-platforming efforts and new product launches, the Nitro engineering team has become a practitioner of Reactive Application principles. Reactive applications are event driven, scalable, resilient, and responsive as they need to react to events, load, failure, and evolving user demands for low latency and high uptime. In Nitro’s case, we need to deliver a responsive and seamless document sharing and collaboration experience for millions of our Nitro Cloud users on various end-user devices (desktop, web, and mobile).

Scala, Nitro, Play!

Reactive Technology Stack at Nitro

Over time, we’ve adopted the core Typesafe stack with Play, Akka, and Scala as the technology backbone for developing our reactive applications. Play Framework is a web-app framework that combines modern concepts like WebSockets with developer favorites like instant reload of local changes. So it not only allows for quick iteration and speed of development but contains the feature and process support for building rich responsive web apps. Akka was a perfect match for us because we deal with a large number of concurrent, independent requests that are computationally intensive yet hard to predict ahead of time (we process hundreds of document pages in parallel every second for documents of various structural complexity). And we already talked about our support for Scala. Together, Scala, Akka, and Play! let us create unparalleled reactive solutions so that our users can work with digital documents in more effective ways.

 

Today we’re announcing our signing of the Reactive Manifesto. We’re marking the occasion with custom T-shirts for our engineering team and an infographic talking about the reactive technology stack that enables our product evolution. Check it out here.

 

About Tiho Bajic

Tiho is a hands-on VP Technology at Nitro focused on building the next generation document sharing and collaboration platform for millions of Nitro’s users. Tiho was previously a founding engineer at Rypple (now Salesforce’s work.com) and has spent over a decade building business-critical software platforms ground up. Since 2011 Tiho has been a strong advocate of Play! framework and more recently has been championing Scala for Nitro platform.