Not logged in » Login
Dec 19 2014

Microsoft to Open Source Project Orleans

Microsoft Research announced that in early 2015 the code of Project Orleans, a programming framework designed for developing scalable and reliable cloud services, will become publicly available at GitHub.

The eXtreme Computing Group at Microsoft Research developed Project Orleans, an actor-based asynchronous programming model built on .NET and strongly borrowing from the Erlang language, to create distributed high-scale computing applications without the need to learn and apply complex concurrency or other scaling patterns. But while Erlang is a functional language that implements its own custom virtual machine, Orleans "directly leverages .NET and its object-oriented capabilities." A public preview of the Orleans engine was released in April at this year's Build conference; back then, Microsoft also announced it would open source the .NET framework on which most Windows applications depend.

Like many others, Microsoft believes that actor-based cloud engines such as Orleans mark a decisive "step forward in simplifying distributed system programming." Conventional platforms adhere to the data shipping paradigm, whereas the actor model follows a function shipping paradigm that allows for "building a stateful middle tier" that builds on the "performance benefits of a cache with the data locality" and combines them with the "semantic and consistency benefits of encapsulated entities via application-specific operations." In addition, Microsoft's developers claim that "actors make it easy to implement horizontal [...] relations between entities in the middle tier." Likewise, actors are expected to bring greater reliability to cloud platforms because they are isolated from one another and only communicate by sending asynchronous messages over system-generated proxies, which adds to the elasticity of applications so that admins will find them easier to scale or recover after a crash. And finally, actors never execute on more than one (programming) thread at a time, which in turn helps to prevent the synchronization issues found in other frameworks.

If all this sounds rather theoretical, that's because it is. On the practical side, Microsoft has used Orleans to build its own Azure cloud platform and power backend online services for its popular Halo franchise of Xbox games, namely the Halo: Reach and Halo 4 installments, which looks like a reasonable proof of its capabilities. According to Microsoft Research, the Orleans code will be published under an MIT License early next year (possibly meaning during the first quarter) and be available from GitHub.


Comments on this article

No comments yet.

Please Login to leave a comment.


Please login

Please log in with your Fujitsu Partner Account.


» Forgot password

Register now

If you do not have a Fujitsu Partner Account, please register for a new account.

» Register now