Simplifying high-scale computing applications with Orleans

This spring at //Build we announced the preview release of “Orleans”, a cloud programming model that originated in Microsoft Research and is built on the well-established Actor model. What’s great about Orleans is its simple and elegant approach to building distributed, high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns.

It was designed for use in the cloud, and has been used extensively in Microsoft Azure. Project “Orleans” has been used in production at Microsoft since 2011, and publicly it is most well-known as the basis of the Halo 4 services architecture—if you’ve played Halo 4, you’ve relied on it as part of the game experience, and the Halo 4 services team will tell you that they could not have achieved the scale and level of user interactivity they needed without it. You can find out how they used Orleans in the Build session “Using Orleans to Build Halo 4’s Distributed Cloud Services in Azure”.

 

 

Halo Waypoint

 What many people don’t know is that in the run up to this release at Build, the TED team had been running an early adopter program with a number of customers and partners, exploring a variety of different scenarios for Orleans. These included financial analysis, business intelligence, social media, load testing, on-line games, the “Internet of Things”, and GPS vehicle tracking. During this program, the team helped explore how these systems could be designed and built with Orleans, establishing good design patterns and best practices, as well as providing the Microsoft Research team with valuable feedback.

 

Tic Tac Toe sample from Orleans.Codeplex.com

 

 Architects and developers loved the simple, clean programming model that Orleans offers, which reduced and simplified the code they wrote. And with the “scale by default” philosophy that Orleans adopts they found they could push their systems to handle ever higher number on Microsoft Azure with ease.

 Understandably, the code that customers developed during this early adopter phase was their IP that couldn’t be shared, but the TED team wanted to share the lessons they had learnt, so they identified a number of key architectural scenarios and patterns, and developed a set of samples illustrating different design techniques that could be used in applying Orleans.

 In April of this year, we held an Orleans “hackfest” hosting several large enterprises representing a wide variety of industries: financial, automotive, industrial, among them – and we were delighted with the level of excitement and interest they showed in Orleans.Two10 Degrees, a Microsoft partner that had been very active during the early adoption program, was also brought in to help validate the work.

 Now you can try out Orleans for yourself. Download it, check out the tutorial and samples available on Codeplex, then let us know what you think.