Getting Started with Microsoft Orleans
We .NET developers already know that .NET is rich on the client side development. A lot of library and framework on this space. However .NET community is lack of the highly scalable server side application or distributed computing. However Microsoft Orleans and Akka .NET comes into .NET world to bring hope and make .NET exciting again. We will dive in into how to setup client and server application with Microsoft Orleans in this blog post.
Microsoft Orleans is framework for building distributed system with Actor model. It have a simple programming approach that make it easier for all level of developer to build the software. It also has a great documentation and step by step tutorial. However i have difficulties on setting the orleans silo ( server ) to be accessed from the remote computer. Here’s how we can do that.
I assume that you have already follow the tutorial on Step by step tutorial especially the first three post.
This blog post is the companion on how to setup the configuration for server and client so it can communicate from different node/computer. Here’s the example setup on my development machine.
Let’s get started with Visual Studio. I assume that you have already follow the step by step on Running in a Stand alone silo. Here’s the solution on my Visual studio.
The HelloGrain.cs only contains the simple implementation of the grain.
Add nuget package Orleans Server to GrainCollection project. Build the project so it copy the OrleansHost.exe to the Debug folder
Now set the external program into OrleansHost.exe. You can do that by Right Click properties and choose Debug tab.
Let’s take a look at the OrleansConfiguration.xml in GrainCollection project ( server ). Make sure that it will refer to the server ip address (in this case 192.168.1.7)
Now you can run the GrainCollection project. Please wait until the console output the following text.
We are done with the server. Now let see how we can setup the client to connect to the server. Please create ClientConfiguration.xml that contain the following setting. It should refer to server ip address
Here’s how the client connect to the server and say greetings from Actor.
Now you can run the client and interact with the server.
I hope this tutorial can help setting up server and client on Microsoft Orleans.
You can find the source code here