Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bradygaster/orleansonazureappservice
https://github.com/bradygaster/orleansonazureappservice
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/bradygaster/orleansonazureappservice
- Owner: bradygaster
- Created: 2022-01-28T07:29:32.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-18T00:27:11.000Z (almost 3 years ago)
- Last Synced: 2023-03-06T14:48:54.392Z (almost 2 years ago)
- Language: C#
- Size: 1010 KB
- Stars: 26
- Watchers: 2
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Orleans Silo + Client on Azure App Service
This repository contains a simple solution with an Orleans Silo and an Orleans Client project. Both are deployed to Azure App Services running in a regional virtual network, using Azure Storage clustering. The folders off of the root are described below:
* Orleans.Azure.Infrastructure - an experimental project designed to support hosting Orleans Silos in Azure App Service or Container Apps with little wire-up.
* OrleansOnAppService.Abstractions - project containing the Grain interfaces.
* OrleansOnAppService.Grains - project containing the Grain implementations.
* OrleansOnAppService.Silo - a simple ASP.NET Core project that hosts the Orleans silo.
* OrleansOnAppService.Client - a simple ASP.NET Core Razor project that serves as a client to the silo and provides a simple user interface.
* ```deploy``` folder - this folder contains a series of [Azure Bicep](http://aka.ms/bicep) templates that can be used to create the application and deploy it.
* ```setup.ps1``` - this file is a one-stop way for you to deploy the app to your own Azure subscription so you can try the scenario.## Prerequisites
* .NET 6.0
* The Azure CLI
* An Azure subscription
* PowerShell *(GitHub Actions will replace this prerequisite soon)*## Setup
1. Clone this repository.
2. Sign in to your Azure subscription using the `az login` command.
3. If you have more than 1 Azure subscription, make sure you're targeting the *right* Azure subscription by using the `az account show` and `az account set -s ` commands.
4. From the root of this repository, run `./setup.ps1`.## Topology diagram
The resultant application is an Orleans clusted comprised of a trio of App Services - the `silo`, the `client` Razor Pages front-end, and the community-contributed Orleans Dashboard, so you can see a snapshot of all the grains, silos, and messages in the cluster.
![Topology diagram](static/topology.png)
> Note: the dashboard was omitted from the diagram to show the most basic silo/client topology possible.
>