Questions tagged [orleans]

An implementation of the Virtual Actor model in .NET, designed for building high scale, concurrent, distributed systems in the cloud.

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 Reach, Halo 4 and Halo 5 cloud services, as well as by a number of other companies.

Orleans source code and documentation is hosted on GitHub.

Orleans project announcements are posted on Twitter @msftorleans

Version 2 was released 2018 Mar 28 Orleans 2.0 released, github release completing the move to full netstandard2.0, including builder patterns and full Microsoft.Extensions.DependencyInjection

Version 3 was released 2019 Oct 25 Orleans 3.0 with ASP.NET Bedrock networking, transactions, performance improvements, TLS

215 questions
20
votes
2 answers

Akka.net vs Orleans performance

Hi I'm in the early stage of choosing an actor framework for a project I'm about to start. As far as I know Orleans was meant to relief the developer of as much pain as possible, at cost of some performance. In Akka.net I know that the actor size…
Fritjof Berggren
  • 3,178
  • 5
  • 35
  • 57
17
votes
2 answers

Transition between stateful service and external persistence in Azure Service Fabric

The Azure Service Fabric appears to be focused on scenarios in which all data can fit within RAM and persistence is used as a backing store. Reliable Services are designed to store information in Reliable Collections, which use a log-checkpoint…
mbabramo
  • 2,573
  • 2
  • 20
  • 24
16
votes
1 answer

Translating async-await C# code to F# with respect to the scheduler

I wonder if this is too a broad question, but recently I made myself to come across a piece of code I'd like to be certain on how to translate from C# into proper F#. The journey starts from here (1) (the original problem with TPL-F# interaction),…
Veksi
  • 3,556
  • 3
  • 30
  • 69
15
votes
4 answers

While attempting to publish a cloud service, I get: "Error: A security token validation error occured for the received JWT token..."

I am attempting to publish an Azure cloud service. Approximately 1 hour after beginning publishing, it returns this error. I am publishing through Visual Studio 2013 ultimate. I am attempting to create a test Orleans-based service (not one of the…
Nate Diamond
  • 5,525
  • 2
  • 31
  • 57
10
votes
1 answer

How to handle split-brain?

I have read in Orleans FAQ when split-brain could happen but I don't understand what bad can happen and how to handle it properly. FAQ says something vague like: You just need to consider the rare possibility of having two instances of an actor…
bobby
  • 617
  • 1
  • 8
  • 19
9
votes
1 answer

Check if grain exists by GUID in Microsoft Orleans

How do you check if a grain exists already for a particular Id? Considering the below will create a new player grain with the Id I pass into GetGrain() if it doesn't exist, I am not sure how to check if one already exists. public async Task
4imble
  • 13,979
  • 15
  • 70
  • 125
8
votes
1 answer

What are PartitionKeyRangeId(s) in Cosmos DB?

We have recently started testing Cosmos DB as a persistent storage for our Orleans Cluster. Our scenario for Cosmos DB is as a Key-Value Store with low-latency and a high amount of Replace, Point Reads and Creates. Due to this we have Document IDs…
8
votes
0 answers

Chaos monkey testing for Microsoft Orleans cluster

I’m looking for some guidance that will help to design a “chaos monkey” testing approach for Orleans cluster. I’m new on that, so what I can think is a script that can randomly restart silo’s, stop/move grains, and do other destructive actions.…
Denys Kholod
  • 121
  • 3
7
votes
1 answer

Data Persistence in Microsoft Orleans

I'm new in Microsoft Orleans and when reading the documentation I found this : ... Grain persistence uses an extensible plugin model so that storage providers for any database can be used. This persistence model is designed for simplicity and is…
RTK
  • 223
  • 1
  • 6
7
votes
1 answer

Is it possible to run Orleans hosted within Windows Service

Please, point me out if there are any direct methods to run Orleans hosted within Windows Service. If there are no direct methods, then are there any indirect methods of doing that? Thank you in advance
Rauf
  • 312
  • 3
  • 16
6
votes
2 answers

How can I ensure orleans grain consistency?

In erlang you can pass initial state to actor when spawning it. This way you don't need to deal with init messages which take actor to it's initial state again or messages needing init message arrived before. In orleans given the assumption of…
6
votes
2 answers

Dependency injection with Orleans

I'm not sure how or where to inject dependencies into a Grain. Where's the best place to do this? If it's not possible, should I set up a container in the WorkerRole.Run method and get instances as I need them?
Michael Nero
  • 1,396
  • 13
  • 24
6
votes
2 answers

Log4Net and Orleans

I was wondering what is the best practice for using log4net in Microsoft Orleans? Where should it be initialized?
Vojtech B
  • 2,837
  • 7
  • 31
  • 59
5
votes
1 answer

Orleans - What happens when system storage is down or inaccessible?

I'm evaluating Microsoft Orleans as the base for a custom distributed cache (among other features). I was able to create a non-reliable cluster for evaluation purposes using MembershipTableGrain. All was working as described within the…
JaviTH
  • 53
  • 3
5
votes
1 answer

Distribute heavy work between multiple grains (Microsoft Orleans)

I want to compute an easy parallelizable calculation (e.g. Mandelbrot) with Orleans on different grains parallel and merge the result back together once the grains are done. However, I am not sure how to do this or if Orleans is even the right…
Thomas D.
  • 1,031
  • 6
  • 17
1
2 3
14 15