Microsoft Orleans is a distributed actor framework for building scalable systems. This setup uses ADO.NET for clustering (managing silo membership) and persistence (storing grain state) with PostgreSQL as the database. The example uses .NET 8, Orleans 8.2.0, and Npgsql 8.0.7.
Technologies and NuGet Packages
.NET 8: The runtime environment.
Microsoft Orleans 8.2.0: Framework for distributed systems.
PostgreSQL: Relational database for clustering and persistence.
Npgsql 8.0.7: PostgreSQL provider for .NET.
NuGet Packages:
Client:
Microsoft.Orleans.Client (8.2.0)
Microsoft.Orleans.Clustering.AdoNet (8.2.0)
Silo:
Microsoft.Orleans.Clustering.AdoNet (8.2.0)
Microsoft.Orleans.Persistence.AdoNet (8.2.0)
Microsoft.Orleans.Server (8.2.0)
Npgsql (8.0.7)
Grains:
Microsoft.Orleans.Runtime (8.2.0)
Microsoft.Orleans.Sdk (8.2.0)
Script:
https://github.com/Monem-Benjeddou/Orleans.Course/blob/main/OrleansCourse.Silo/script.txt
00:00 Introduction
01:35 What is Orleans Persistance?
07:41 Configuring Orleans Clustering with ADO.NET
08:05 Setting Up Models
09:56 First Grain
24:00 Application Architecture