Cluster className=org.apache.catalina.ha.tcp.SimpleTcpCluster 各个节点意思

本文主要是介绍Cluster className=org.apache.catalina.ha.tcp.SimpleTcpCluster 各个节点意思,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

<!-- Cluster(集群,族) 节点,如果你要配置tomcat集群,则需要使用此节点.className 表示tomcat集群时,之间相互传递信息使用那个类来实现信息之间的传递.channelSendOptions可以设置为2、4、8、10,每个数字代表一种方式2 = Channel.SEND_OPTIONS_USE_ACK(确认发送)4 = Channel.SEND_OPTIONS_SYNCHRONIZED_ACK(同步发送) 8 = Channel.SEND_OPTIONS_ASYNCHRONOUS(异步发送)在异步模式下,可以通过加上确认发送(Acknowledge)来提高可靠性,此时channelSendOptions设为10
-->
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8"><!--Manager决定如何管理集群的Session信息。Tomcat提供了两种Manager:BackupManager和DeltaManagerBackupManager-集群下的所有Session,将放到一个备份节点。集群下的所有节点都可以访问此备份节点DeltaManager-集群下某一节点生成、改动的Session,将复制到其他节点。DeltaManager是Tomcat默认的集群Manager,能满足一般的开发需求使用DeltaManager,每个节点部署的应用要一样;使用BackupManager,每个节点部署的应用可以不一样.className-指定实现org.apache.catalina.ha.ClusterManager接口的类,信息之间的管理.expireSessionsOnShutdown-设置为true时,一个节点关闭,将导致集群下的所有Session失效notifyListenersOnReplication-集群下节点间的Session复制、删除操作,是否通知session listenersmaxInactiveInterval-集群下Session的有效时间(单位:s)。maxInactiveInterval内未活动的Session,将被Tomcat回收。默认值为1800(30min)--><Manager className="org.apache.catalina.ha.session.DeltaManager"expireSessionsOnShutdown="false"notifyListenersOnReplication="true"/><!--Channel是Tomcat节点之间进行通讯的工具。Channel包括5个组件:Membership、Receiver、Sender、Transport、Interceptor--><Channel className="org.apache.catalina.tribes.group.GroupChannel"><!--Membership维护集群的可用节点列表。它可以检查到新增的节点,也可以检查到没有心跳的节点className-指定Membership使用的类address-组播地址port-组播端口frequency-发送心跳(向组播地址发送UDP数据包)的时间间隔(单位:ms)。默认值为500dropTime-Membership在dropTime(单位:ms)内未收到某一节点的心跳,则将该节点从可用节点列表删除。默认值为3000注: 组播(Multicast):一个发送者和多个接收者之间实现一对多的网络连接。一个发送者同时给多个接收者传输相同的数据,只需复制一份相同的数据包。它提高了数据传送效率,减少了骨干网络出现拥塞的可能性相同组播地址、端口的Tomcat节点,可以组成集群下的子集群--><Membership className="org.apache.catalina.tribes.membership.McastService"address="228.0.0.4"port="45564"frequency="500"dropTime="3000"/><!--Receiver : 接收器,负责接收消息接收器分为两种:BioReceiver(阻塞式)、NioReceiver(非阻塞式)className-指定Receiver使用的类address-接收消息的地址port-接收消息的端口autoBind-端口的变化区间如果port为4000,autoBind为100,接收器将在4000-4099间取一个端口,进行监听selectorTimeout-NioReceiver内轮询的超时时间maxThreads-线程池的最大线程数--><Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"address="auto"port="4000"autoBind="100"selectorTimeout="5000"maxThreads="6"/><!--Sender : 发送器,负责发送消息Sender内嵌了Transport组件,Transport真正负责发送消息--><Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter"><!--Transport分为两种:bio.PooledMultiSender(阻塞式)、nio.PooledParallelSender(非阻塞式) --><Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/></Sender><!--Interceptor : Cluster的拦截器TcpFailureDetector-网络、系统比较繁忙时,Membership可能无法及时更新可用节点列表,此时TcpFailureDetector可以拦截到某个节点关闭的信息,并尝试通过TCP连接到此节点,以确保此节点真正关闭,从而更新集群可以用节点列表                 --><Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/><!--MessageDispatch15Interceptor-查看Cluster组件发送消息的方式是否设置为Channel.SEND_OPTIONS_ASYNCHRONOUS(Cluster标签下的channelSendOptions为8时)。设置为Channel.SEND_OPTIONS_ASYNCHRONOUS时,MessageDispatch15Interceptor先将等待发送的消息进行排队,然后将排好队的消息转给Sender--><Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/></Channel><!--Valve : 可以理解为Tomcat的拦截器ReplicationValve-在处理请求前后打日志;过滤不涉及Session变化的请求                   vmRouteBinderValve-Apache的mod_jk发生错误时,保证同一客户端的请求发送到集群的同一个节点--><Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=""/><Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/><!--Deployer : 同步集群下所有节点的一致性。Deployer没试验成功过。。。--><Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"tempDir="/tmp/war-temp/"deployDir="/tmp/war-deploy/"watchDir="/tmp/war-listen/"watchEnabled="false"/><!--ClusterListener : 监听器,监听Cluster组件接收的消息使用DeltaManager时,Cluster接收的信息通过ClusterSessionListener传递给DeltaManager--><ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>

这篇关于Cluster className=org.apache.catalina.ha.tcp.SimpleTcpCluster 各个节点意思的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1078474

相关文章

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

day-51 合并零之间的节点

思路 直接遍历链表即可,遇到val=0跳过,val非零则加在一起,最后返回即可 解题过程 返回链表可以有头结点,方便插入,返回head.next Code /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode() {}*

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟)

【每日一题】LeetCode 2181.合并零之间的节点(链表、模拟) 题目描述 给定一个链表,链表中的每个节点代表一个整数。链表中的整数由 0 分隔开,表示不同的区间。链表的开始和结束节点的值都为 0。任务是将每两个相邻的 0 之间的所有节点合并成一个节点,新节点的值为原区间内所有节点值的和。合并后,需要移除所有的 0,并返回修改后的链表头节点。 思路分析 初始化:创建一个虚拟头节点

log4j2相关配置说明以及${sys:catalina.home}应用

${sys:catalina.home} 等价于 System.getProperty("catalina.home") 就是Tomcat的根目录:  C:\apache-tomcat-7.0.77 <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %msg%n" /> 2017-08-10

【Go】go连接clickhouse使用TCP协议

离开你是傻是对是错 是看破是软弱 这结果是爱是恨或者是什么 如果是种解脱 怎么会还有眷恋在我心窝 那么爱你为什么                      🎵 黄品源/莫文蔚《那么爱你为什么》 package mainimport ("context""fmt""log""time""github.com/ClickHouse/clickhouse-go/v2")func main(

2024.9.8 TCP/IP协议学习笔记

1.所谓的层就是数据交换的深度,电脑点对点就是单层,物理层,加上集线器还是物理层,加上交换机就变成链路层了,有地址表,路由器就到了第三层网络层,每个端口都有一个mac地址 2.A 给 C 发数据包,怎么知道是否要通过路由器转发呢?答案:子网 3.将源 IP 与目的 IP 分别同这个子网掩码进行与运算****,相等则是在一个子网,不相等就是在不同子网 4.A 如何知道,哪个设备是路由器?答案:在 A

图解TCP三次握手|深度解析|为什么是三次

写在前面 这篇文章我们来讲解析 TCP三次握手。 TCP 报文段 传输控制块TCB:存储了每一个连接中的一些重要信息。比如TCP连接表,指向发送和接收缓冲的指针,指向重传队列的指针,当前的发送和接收序列等等。 我们再来看一下TCP报文段的组成结构 TCP 三次握手 过程 假设有一台客户端,B有一台服务器。最初两端的TCP进程都是处于CLOSED关闭状态,客户端A打开链接,服务器端

JS和jQuery获取节点的兄弟,父级,子级元素

原文转自http://blog.csdn.net/duanshuyong/article/details/7562423 先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比。 JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当最DOM元素。 <div id="test"><div></div><div></div

org.hibernate.hql.ast.QuerySyntaxException:is not mapped 异常总结

org.hibernate.hql.ast.QuerySyntaxException: User is not mapped [select u from User u where u.userName=:userName and u.password=:password] 上面的异常的抛出主要有几个方面:1、最容易想到的,就是你的from是实体类而不是表名,这个应该大家都知道,注意