Orleans (software Framework)
   HOME

TheInfoList



OR:

Orleans is a cross-platform
software framework In computer programming, a software framework is an abstraction in which software, providing generic functionality, can be selectively changed by additional user-written code, thus providing application-specific software. It provides a standard ...
for building scalable and robust distributed interactive applications based on the
.NET Framework The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
Microsoft's Orleans Distributed App Framework Is Now Cross Platform - The New Stack
/ref> or on the more recent .NET.


Overview

Orleans was originally created by the ''eXtreme Computing Group'' at
Microsoft Research Microsoft Research (MSR) is the research subsidiary of Microsoft. It was created in 1991 by Richard Rashid, Bill Gates and Nathan Myhrvold with the intent to advance state-of-the-art computing and solve difficult world problems through technologi ...
and introduced the ''virtual actor model'' as a new approach to building distributed systems for the cloud. Orleans scales from a single on-premises server to highly-available and globally distributed applications in the cloud. The virtual actor model is based on the
actor model The actor model in computer science is a mathematical model of concurrent computation that treats ''actor'' as the universal primitive of concurrent computation. In response to a message it receives, an actor can: make local decisions, create more ...
but has several differences: # A virtual actor always exists, it cannot be explicitly created or destroyed. # Virtual actors are automatically instantiated. If a server hosting an actor crashes, the next message sent to the actor causes it to be reinstantiated automatically. # The server that an actor is on is transparent to the application code. # Orleans can automatically create multiple instances of the same stateless actor. Starting with cloud services for the Halo franchise, the framework has been used by a number of cloud services at Microsoft and other companies since 2011. The core Orleans technology was transferred to
343 Industries 343 Industries is an American video game developer located in Redmond, Washington, part of Xbox Game Studios. Headed by Pierre Hintze, the studio is responsible for the ''Halo'' series of military science fiction games, originally created and ...
and is available as
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
since January 2015. The source code is licensed under MIT License and hosted on GitHub. Orleans runs on
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
, Linux, and macOS and is compatible with .NET Standard 2.0 and above.


Features

Some Orleans features include: * Persistence * Distributed
ACID In computer science, ACID ( atomicity, consistency, isolation, durability) is a set of properties of database transactions intended to guarantee data validity despite errors, power failures, and other mishaps. In the context of databases, a sequ ...
transactions * Streams * Timers & Reminders * Fault tolerance


Related implementations

The Electronic Arts BioWare division created Project ''Orbit''. It is a Java implementation of virtual actors that was heavily inspired by the Orleans project.Gamasutra: Creating scalable backends for games using open source Orleans framework
/ref>


See also

* Distributed computing


References


Further reading

* *


External links

*
GitHub - dotnet/orleans: Orleans is a cross-platform framework for building distributed applications with .NET

Orleans - Virtual Actors - Microsoft Research

Microsoft Orleans - a worked example - CodeProject
.NET software Cloud computing Distributed computing Free and open-source software Free software programmed in C Sharp Microsoft free software Microsoft Research Software using the MIT license 2015 software {{Microsoft-software-stub