1. 10

  2. 3

    I was curious how this differs from Erlang, and it looks as though they wrote a blog post addressing that very question! Project Orleans: Different Than Erlang, Designed for a Broad Group of Developers

    1. 3

      Yup, it has a lot of unique features that are not available in Erlang. We are working on a framework inspired by Orleans for Erlang https://github.com/spacetime-iot/erleans

      1. 2

        I also wrote a summary on how Orleans differs from using Basho’s Riak Core (built on Erlang) for building fault tolerant, highly-available, distributed applications. It provides a line-by-line comparison of the paper.


        1. [Comment removed by author]

          1. 4

            Here are the readme and website.

            Orleans is a framework that provides a straightforward approach to building distributed high-scale computing applications, without the need to learn and apply complex concurrency or other scaling patterns. It was created by Microsoft Research and designed for use in the cloud.

            Orleans has been used extensively in Microsoft Azure by several Microsoft product groups, most notably by 343 Industries as a platform for all of Halo 4 and Halo 5 cloud services, as well as by a growing number of other companies.

            There is more detail in the introduction.

            The tl;dr seems to be that it’s an actor framework, with innovations that make it more scalable. They call virtual actors “grains”.

            The biggest difference [between Orleans and traditional actor frameworks] is that physical instantiations of grains are completely abstracted away and are automatically managed by the Orleans runtime. The Virtual Actor Model is much more suitable for high-scale dynamic workloads like cloud services and is the major innovation of Orleans.