下载解压 kafka 后,在 kafka/config 下有 3 个配置文件与主题的生产.消费相关. server.properties--服务端配置 producer.properties--生产端配置 consumer.properties--消费端配置 这里主要介绍服务端的参数配置.   server.properties  #指定 kafka集群中 broker 的全局编号,每一个 broker 的编号不能重复. broker. #Listeners 指明 broker 监听客户端连接的…
服务端配置 Silo通过SiloHostBuilder和许多补充选项类以编程方式进行配置. Silo配置有几个关键方面: Orleans集群信息 集群提供程序(不知道咋翻译) Silo到Silo和Client到Silo通信的端点 应用部分 这是Silo配置的示例,该Silo配置定义群集信息,使用Azure群集并配置应用程序部分: var silo = new SiloHostBuilder() // 集群信息 .Configure<ClusterOptions>(options => {…
客户端配置 通过一个ClientBuilder和多个补充选项类,以编程方式配置一个用于连接Silo集群并将请求发送至Grain的客户端. 客户端配置示例: var client = new ClientBuilder() // 集群信息 .Configure<ClusterOptions>(options => { options.ClusterId = "my-first-cluster"; options.ServiceId = "MyOrleansSe…
本地开发配置 本地开发和调试的时候,我们可能不需要去关注集群和网络ip端口.所以对于本地开发模式,Orleans给了我们比较简单的配置方式. Silo配置 在本地开发的配置模式下,Orleans会默认使用本地11111和30000作为Silo和网管的监听端口 此时我们需要ClusterOptions通过ISiloBuilder.Configure方法进行配置. ConfigureApplicationParts用于将带有Grain类的程序集显式添加到应用程序设置中.由于WithReference…
ClassRoom ClassRoom是一个练手demo,目的是为了能熟悉掌握Orleans的基本知识和使用方法,我会尽量在这个项目中加入更多的知识点,一边学一边练避免我看完文档就忘掉 创建项目 依旧是四个项目起步 项目名称 项目类型 项目说明 IGrains .net Core 3.1 类库 Grain接口库 Grains .net Core 3.1 类库 实现Grain的类库 Silo_ConsoleApp .net Core 3.1 控制台 Silo服务 Client_ConsoleApp…
项目结构 开始Orleans之前,我们都知道Orleans主要可以分为俩部分,Host和Client. 所以我们可以创建如下的项目结构: IGrain 一个包含Grain接口的库(.NET Standard 2.1) Grain 一个包含Grain类的库(.NET Standard 2.1) Host 一个控制台应用程序,用来托管我们的Silo(.NET Core 3.1) Client 一个控制台应用程序,用来做我们的Orleans客户端(.NET Core 3.1) Orleans引用 Nu…
前言 Orleans是一个跨平台的框架,用于搭建可扩展的分布式应用程序 第一次接触Orleans还是两年前做游戏服务器的时候,用SignalR+Orleans的组合,写起代码来不要太爽. 即将进入2020年,NET Core也在前几天发布了3.1版本,于是决定把Orleans拿出来再学习学习. 学习前的准备 学习Orleans之前,建议大家先阅读一下官方文档:Orleans 对它有一个基本印象之后再对 Actor 模型有一个基本了解,本文更多的是学习笔记,可能对理论相关的知识会讲述的较少,网上有…
简介 在这一节,我们将介绍如何在Silo和Client中获取Grain及调用Grain Grain获取方式 从Grain内部获取: //根据特定的Key值创建或获取指定的Grain IStudent student = GrainFactory.GetGrain<IStudent>(studentID); 从Client获取: IStudent player = client.GetGrain<IStudent>(studentID); 应用 我们在项目中新增一个教室的概念,学生入…
简介 Orleans用起来的确很爽,更爽的是咱们有能监控它的工具. OrleansDashboard 这个工具是一个可视化的Silo监控工具,Silo和Grain的活跃状态一目了然,各个接口的响应速度也可以很清晰的统计到. 安装 使用NuGet引用 OrleansDashboard 然后修改 SiloHostBuilder 的配置,添加Dashboard: new SiloHostBuilder() .UseDashboard(options => { }) .Build(); 启动Silo,然…
本文目标 基于SpringBoot + Maven 分别使用自动配置与手动配置过滤器方式集成CAS客户端. 需要提前搭建 CAS 服务端,参考 https://www.cnblogs.com/hellxz/p/15740935.html 代码已上传本人 GitHub https://github.com/hellxz/cas-integration-demo 代码目录结构 代码实现 父工程 cas-integration-demo pom.xml <project xmlns="http:…