按照上次的例子我们搭建了Liferay 下的集群之后,为了检验fail-over 容错性,我们去看下服务器的日志:

假定有以下配置:

node1配置的Group内的receiver 端口是5000(这里的receiver是相对其他集群节点同步session的接受者,因为集群内任何一个节点的session都会被多播出去)

  1. <Channel className="org.apache.catalina.tribes.group.GroupChannel">
  2. <Membership className="org.apache.catalina.tribes.membership.McastService"
  3. address="228.0.0.4"
  4. port="45564"
  5. frequency="500"
  6. dropTime="3000"/>
  7. <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
  8. address="auto"
  9. port="5000"
  10. selectorTimeout="100"
  11. maxThreads="6"/>

而node2配置的Group内的receiver端口是5001

  1. <Channel className="org.apache.catalina.tribes.group.GroupChannel">
  2. <Membership className="org.apache.catalina.tribes.membership.McastService"
  3. address="228.0.0.4"
  4. port="45564"
  5. frequency="500"
  6. dropTime="3000"/>
  7. <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
  8. address="auto"
  9. port="5001"
  10. selectorTimeout="100"
  11. maxThreads="6"/>

所以,在启动node1的日志里面,可以清楚看到在启动Cluster集群过程中,它acccept了一个套接字在端口5000上

并且它的membership列表中有另外的集群节点node2 (5001接收端口)

同样,对比node2的日志,我们可以看到,在node2的启动过程中,也成功的将自己打开套接字于5001端口并且成员(membership)里面有node1 (5000端口)

这时候,如果我们将node1 shutdown 掉,那么node2就会探测到这个时间,因为heartbeat无法连到了node1,于是,它会去verify是否node1是否真的挂了:

最后校验完毕,node1 真的挂了 ,于是在我们双机集群的环境中,node2将自动配合apache 服务器,来接管所有本来和node1 有关的session.

转载于:https://blog.51cto.com/supercharles888/843374

Liferay 集群 (fail-over)相关推荐

  1. Redis 3.2.1集群 —— fail状态的产生

    一.节点的fail 节点的fail是通过集群中超过半数的节点检测失效时才生效,这里会触发选举,将slave升级为master 二.集群的fail 如果集群任意master挂掉,且当前master没有s ...

  2. redis 学习笔记——redis集群

    redis-cluster 简介 redis-cluster是一个分布式.容错的redis实现,redis-cluster通过将各个单独的redis实例通过特定的协议连接到一起实现了分布式.集群化的目 ...

  3. 不会-Redis 水滴石穿之(七)集群

    Redis 水滴石穿之(七)集群 目录 Redis 水滴石穿之(七)集群 一.概述 二.集群搭建 2.1.手动搭建集群 1.修改配置文件 2.启动节点 3.节点握手 4.分配槽 5.指定主从关系 2. ...

  4. nacos集群之日志狂刷fail to connect server,after trying 567 times,last try server is...

    最近遇到个问题: 三台服务器搭建的nacos集群,在后台管理页面显示3个节点都是正常状态,服务也都能注册和发现,但是每台服务器中的nacos.log一直狂刷fail to connect server ...

  5. redis集群节点宕机 fail状态 redis的投票机制实测

    redis集群节点宕机 fail状态 redis的投票机制实测  redis集群是有很多个redis一起工作,那么就需要这个集群不是那么容易挂掉,所以呢,理论上就应该给集群中的每个节点至少一个备用的r ...

  6. 集群hive fail to get schema version MySql远程访问Access denied for user: xxx@%‘ to database ‘datatest’ 问题

    hive中MySQL远程登录的问题解决 检查hive的MySQL驱动包是否已经在 hive文件中lib文件夹下 配置文件hive-env.sh 和 hive-site.xml(网上很多配置文件信息这里 ...

  7. Redis集群管理方式

    Redis的有三种集群方式:主从复制,哨兵模式和集群. 主从复制 从服务器连接主服务器,发送SYNC命令: 主服务器接收到SYNC后执行BGSAVE命令生成RDB文件,并使用缓冲区记录此后执行的所有写 ...

  8. docker 实现redis集群搭建

    摘要:接触docker以来,似乎养成了一种习惯,安装什么应用软件都想往docker方向做,今天就想来尝试下使用docker搭建redis集群. 首先,我们需要理论知识:Redis Cluster是Re ...

  9. Redis6安装配置集群cluster以及集群宕机注意事项

    Redis6的cluster模型推荐3主3从 先准备3台服务器,每个上面部署2个redis,服务器配置2核2G: 下面在每台服务器安装redis6,每台机器只要安装一次即可,然后分别配置2个端口的co ...

最新文章

  1. matlab 分段式规范作图
  2. Tungsten Replicator 多环境复制工具安装方法
  3. python删除为空值的列_python如何删除列为空的行
  4. 墨迹天气语音包_广州天气|冷空气到货,任性吃火锅的理由又有了
  5. 计算机监控系统必须有直流系统吗,变电站直流屏是否必须用蓄电池
  6. 190509每日一句
  7. android 5.1 内核版本号,最新的安卓5.1.1 ROOT教程(不需要刷第三方内核)
  8. 尚硅谷Javaweb教程书城项目订单模块完整版
  9. 几个小图像处理工具网址
  10. css多行文字居中对齐
  11. 【杂项】笔记本电脑外接显示器实现扩屏
  12. word论文排版,页码和页眉
  13. 祖师爷获新认可!图灵成为 50 英镑新钞人物
  14. 小熊派移植 TencentOS-tiny+M26/EC20+MQTT 对接腾讯云平台IoThub
  15. 仪表研发工程师所需要了解的蓝牙和WiFi知识
  16. 2022华为杯E题思路分析
  17. Numpy + Matplotlib 绘制白色画图
  18. 【PTA】7-7 大炮打蚊子
  19. apache2 docker 无法访问_Docker 安装 Apache
  20. Oracle 性能优化总结

热门文章

  1. python爬虫28 | 你爬下的数据不分析一波可就亏了啊,使用python进行数据可视化...
  2. canvas - 饼状图
  3. ScrollView的基本用法丶代理方法
  4. Func与Action
  5. java的reflection
  6. Stanford University C++课程
  7. 简单介绍ASP中Cache技术的应用
  8. SpringMVC中利用HandlerExceptionResolver完成异常处理
  9. maven的pom报plugins错误的解决方法.
  10. 菜鸟程序员之Asp.net MVC Session过期异常的处理