上篇我们讲了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. Comparison method violates its general contract 解决

    java.lang.IllegalArgumentException: Comparison method violates its general contract! 原因 JDK7中的Collec ...

  2. Knockout.Js官网学习(Mapping高级用法一)

    前言 有时候,在使用ko.mapping.fromJS的时候,可能有必要去使用mapping的高级用法来定义mapping的详细过程,以后定义了,以后再调用的时候就不必再定义了.这里有一些情形,你可能 ...

  3. 理解HTTP之keep-alive

    理解HTTP之keep-alive 在前面一篇文章中讲了TCP的keepalive,这篇文章再讲讲HTTP层面keep-alive.两种keepalive在拼写上面就是不一样的,只是发音一样,于是乎大 ...

  4. C# 远程服务器 创建、修改、删除 应用程序池 网站

    首先 C# 操作 站点 需要 引用Microsoft.Web.Administration.dll 文件,创建站点我们一般需要 远程服务的IP,网站名称.端口.物理路径:这里默认网站名称和应用程序池名 ...

  5. 从YOLOv1到YOLOv3,目标检测的进化之路

    https://blog.csdn.net/guleileo/article/details/80581858 本文来自 CSDN 网站,作者 EasonApp. 作者专栏: http://dwz.c ...

  6. .NET 开源开发项目【翻译】

    原文地址 本文列出了 .NET 开源开发项目(open source developer projects).意在包括对开发过程的所有方面有所帮组的项目.对于消费项目(consumer project ...

  7. WPF 实现阴影效果

    一.WPF最常见的一个阴影效果的类是DropShadowEffect.它有几种比较有用的属性比如:Color设置颜色Direction设置投影的方向ShadowDepth设置投影距纹理下方的距离Opa ...

  8. maven 设置跳过测试

    1.在执行mvn命令时增加以下参数可以跳过测试: -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下. -Dmaven.test ...

  9. [BetterExplained]为什么你应该(从现在开始就)写博客

    (一)为什么你应该(从现在开始就)写博客 用一句话来说就是,写一个博客有很多好处,却没有任何明显的坏处.(阿灵顿的情况属于例外,而非常态,就像不能拿抽烟活到一百岁的英国老太太的个例来反驳抽烟对健康的极 ...

  10. (原)ubuntu中使用conda安装tensorflow-gpu

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/9834567.html 参考网址: https://www.anaconda.com/blog/dev ...