一 項目結構 1> 介面項目 .net core類庫 2> Grains實現項目 .net core類庫 3> 服務Host .net core console application 4> 服務調用者Client .net core console application with tcp 5> ...
一 項目結構
1> 介面項目
.net core類庫
2> Grains實現項目
.net core類庫
3> 服務Host
.net core console application
4> 服務調用者Client
.net core console application with tcp
5> 客戶端App
unity3d
二 引入Orleans類庫
1> 介面和實現項目
PM> Install-Package Microsoft.Orleans.Core.Abstractions
PM> Install-Package Microsoft.Orleans.OrleansCodeGenerator.Build
2> Host
PM> Install-Package Microsoft.Orleans.Server
3> Client
PM> Install-Package Microsoft.Orleans.Client
三 完成介面和Grains的代碼
1> Interface繼承IGrainWithIntegerKey, IGrainWithGuidKey......
2> Grains繼承介面和Grain<StateEntity>
四 配置集群
1> 使用本地集群
2> 替換使用Ado.net集群
五 配置日誌
1> 使用Microsoft.Extensions.Logging.Console
2> 替換使用NLog
六 持久化
1> 配置持久化方式 使用Ado.Net持久化狀態
2> 自定義持久化映射
七 非同步推送消息
1> Client添加Observer實現
2> 介面增加訂閱API
3> Grain添加ObserverManager, 並實現訂閱
4> Client通過CreateObjectRefrence創建observerReference進行訂閱
八 定時任務
九 EventSource
十 實戰: 一個開房間游戲