上篇我们讲了Orleans学习总结(三)--持久化篇,这一篇我们来说说集群配置,毕竟这个才是Orleans的看家本领

Orleans支持热起动,支持自动节点发现,能够断线重发等一系列黑科技。

我这篇是以Zookeeper为例说明。

一、开启Zookeeper

Zookeeper是什么和怎么配置我就这里就不赘述,自行百度。官方推荐至少开5个,我这做测试就只开1个。

二、安装Orleans的Zookeeper的依赖库

三、Host配置

1、在上篇里提到的OrleansConfiguration.xml配置文件

删除

<SeedNode Address="localhost" Port="11111" />

添加这一行

<SystemStore SystemStoreType="ZooKeeper"

DeploymentId="ZooKeeper"
DataConnectionString="192.168.0.68:2181"/>

DataConnectionString="192.168.0.68:2181",如果有多个Zookeeper,用,分开

<?xml version="1.0" encoding="utf-8"?><OrleansConfiguration xmlns="urn:orleans">

  <Globals>

    <SystemStore SystemStoreType="ZooKeeper"

               DeploymentId="ZooKeeper"

               DataConnectionString="192.168.0.68:2181"/>

    <StorageProviders>

      <!--名字为Default1的持久化方式,MySQL-->

      <Provider Type="Orleans.Storage.AdoNetStorageProvider"

                Name="Default1"

                AdoInvariant="MySql.Data.MySqlClient"

                DataConnectionString="Server=192.168.0.209;Database=orleans;User Id=dbuser;Password=dbuser;"

                UseJsonFormat="true" />

    </StorageProviders>

  </Globals>

  <Defaults>

    <!--Silo和Silo之间通信用的IP和端口-->

    <Networking Address="localhost" Port="11111" />

    <!--Client用来链接Silo的IP和端口-->

    <ProxyingGateway Address="localhost" Port="40000" />

    <!--Log配置-->

    <Tracing DefaultTraceLevel="Info" TraceToConsole="true" TraceToFile="..\log\{0}-{2}-{1}.log" WriteMessagingTraces="false">

      <TraceLevelOverride LogPrefix="Application" TraceLevel="Info" />

      <TraceLevelOverride LogPrefix="AssemblyLoader.Client" TraceLevel="Info" />

    </Tracing>

  </Defaults>

  </OrleansConfiguration>

四、Client配置

在生成目录创建一个ClientConfiguration.xml文件

<?xml version="1.0" encoding="utf-8"?><ClientConfiguration xmlns="urn:orleans">

    <SystemStore SystemStoreType="ZooKeeper"

                   DeploymentId="ZooKeeper"

                   DataConnectionString="192.168.0.68:2181"/>

  <Tracing DefaultTraceLevel="Info" TraceToConsole="false" TraceToFile="{0}-{2}-{1}.log" WriteMessagingTraces="false">

    <TraceLevelOverride LogPrefix="Application" TraceLevel="Info" />

    <TraceLevelOverride LogPrefix="AssemblyLoader.Client" TraceLevel="Warning" />

  </Tracing></ClientConfiguration>

这里的DataConnectionString="192.168.0.68:2181,一定要和上面的一样。

2、 客户端加载这个配置

五、测试

在多台机器上开Host,和Client,然后尝试关闭某个Host,看Client是否能正常运行。

Orleans学习总结(四)--集群配置篇的更多相关文章

  1. SpringCloud学习之eureka集群配置

    一.集群方案及部署思路: 如果是单节点的注册中心,是无法保证系统稳定性的,当然现在项目部署架构不可能是单节点的. 集群节点的部署思路:通过运行多个实例并请求他们相互注册,来完成注册中心的高可用性(结伴 ...

  2. Kubernetes集群搭建之Etcd集群配置篇

    介绍 etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点. 简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过g ...

  3. Tomcat集群配置学习篇-----分布式应用

    Tomcat集群配置学习篇-----分布式应用 现目前基于javaWeb开发的应用系统已经比比皆是,尤其是电子商务网站,要想网站发展壮大,那么必然就得能够承受住庞大的网站访问量:大家知道如果服务器访问 ...

  4. 转载 Tomcat集群配置学习篇-----分布式应用

    Tomcat集群配置学习篇-----分布式应用 现目前基于javaWeb开发的应用系统已经比比皆是,尤其是电子商务网站,要想网站发展壮大,那么必然就得能够承受住庞大的网站访问量:大家知道如果服务器访问 ...

  5. SpringCloud学习笔记(四):Eureka服务注册与发现、构建步骤、集群配置、Eureka与Zookeeper的比较

    简介 Netflix在设计Eureka时遵守的就是AP原则 拓展: 在分布式数据库中的CAP原理 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性). Availab ...

  6. Apache负载均衡与Tomcat集群配置学习(Windows环境)

    本文主要参考自http://www.iteye.com/topic/985404?dhcc,经由实际操作配置操并记录而成. 由于最近的一个Java开发项目用到了Tomcat中间件作为web服务器,刚开 ...

  7. MySQL Cluster 7.3.5 集群配置实例(入门篇)

    一.环境说明: CentOS6.3(32位) + MySQL Cluster 7.3.5,规划5台机器,资料如下: 节点分布情况: MGM:192.168.137. NDBD1:192.168.137 ...

  8. ElasticSearch入门 第二篇:集群配置

    这是ElasticSearch 2.4 版本系列的第二篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  9. MySQL Cluster 7.3.5 集群配置参数优化(优化篇)

    按照前面的教程:MySQL Cluster 7.3.5 集群配置实例(入门篇),可快速搭建起基础版的MySQL Cluster集群,但是在生成环境中,还是有很多问题的,即配置参数需要优化下, 当前生产 ...

随机推荐

  1. Android之官方导航栏ActionBar

    一.ActionBar概述 ActionBar是android3.0以后新增的组件,主要用于标示应用程序以及用户所处的位置并提供相关操作以及全局的导航功能.下面我们就看看如何使用ActionBar,真 ...

  2. 4种事务的隔离级别,InnoDB怎样巧妙实现?

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/z50L2O08e2u4afToR9A/article/details/82186189 事务ACID ...

  3. 关于tomcat session机制梳理

     一道题目引起的思考:"tomcat里怎样禁止服务端自己主动创建session". 1背景知识: 要说tomcat的机制.先从session说起. http是无状态协议(http详 ...

  4. MySql之存储过程的使用

    一:创建存储过程 1:简单存储过程 CREATE PROCEDURE 存储过程名() BEGIN SQL操作 END; 2:使用参数的存储过程 CREATE PROCEDURE 存储过程名(IN in ...

  5. javascript验证QQ号、邮箱和手机号码

    //验证QQ号码5-11位 function isQQ(qq) { var filter = /^\s*[.0-9]{5,11}\s*$/; if (!filter.test(qq)) { retur ...

  6. Uploadify导致Chrome频繁崩溃Crash

    上传功能是工作中经常会遇到的问题,应该作为开发标配的技能每个人都会. 我选用的是Uploadify 3.1.2进行上传,使用方法参考之前的一篇文章, 今天记录下一个我遇到的很神奇的bug chrome ...

  7. top命令详析及排查问题使用演示

    1. top基本使用 top命令运行图 第一行:基本信息 第二行:任务信息 第三行:CPU使用情况 第四行:物理内存使用情况 buff/cache: buffers 和 cache 都是内存中存放的数 ...

  8. IDEA使用笔记(七)——编辑器最大个数的设置

    我想一定有许多人和我一样在使用IDEA的时候,打开了许多的编辑器选项卡,但是打开的数量是有限的,我们想打开更多的页面,并且希望控制当再次达到大限的时候能关闭那些我们最久没有看的文件! 好吧!看下面的配 ...

  9. OpenCV 学习笔记 05 级联分类器CascadeClassifier类

    在人脸检测中,CascadeClassifier 是一个类,该类的作用是(基于官方已经训练好的数据文件 .xml)实例化一个检测器. 1 类 CascadeClassifier 的概述 首先看一下该类 ...

  10. ql.io来自ebay的api快速集成的构建api的框架

    说的有点绕口,实际上是为了减轻在Web上请求数据的复杂度,eBay推出了自己的Web查询语言——ql.io,ql.io将多个独立的API请求绑定成一个单独的请求. ---待续