OrleansContrib / OrleansTemplates

MIT License
37 stars 9 forks source link

Question about Silo Deployment #6

Closed normanhh3 closed 8 years ago

normanhh3 commented 8 years ago

Just started looking into Orleans recently and came across these templates which look like a good starting point.

Is an intentional design goal of these templates to deploy the WebAPI alongside each silo instance?

Is the code in the Program.cs template really designed to be production code? It seems like it would be preferable to host the Orleans Silo and WebAPI using something like Topshelf for Windows Service hosting?

I'm looking for guidelines for implementation, thanks for clarification and pointers!

nehmebilal commented 8 years ago

Hi @normanhh3,

All what OrleansTemplates provides from that perspective is auto-generating the WebApi code for you. The hosting side is more Sample code than production code.

The WebApi doesn't need to be deployed alongside the Orleans silo. The WebApi communicates with the Orleans Silo using the Orleans client which is initialized as follows (and as shown in Program.cs):

Orleans.GrainClient.Initialize("DevTestClientConfiguration.xml");

I am not sure if anyone has used the code in production yet. For deployment, you can use Yams or Service Fabric, cloud services or ARM. I'm sure Orleans documentation also has some information about deployments.

normanhh3 commented 8 years ago

Thanks for the feedback. My scenario is an on-premise deployment so I'm a little more limited in the tooling I can use. Thanks for your response.