当前位置: 首页 > news >正文

tomcat 实现会话绑定

Tomcat 后端服务器实现 Session ID会话保持

基础架构:

7-6 代理服务器nginx配置

7-3 tomcat 服务器 

7-5 同理

测试:

此时刷新,会话ID一直在变,这样不好

如何解决呢?

不好的是确定ip之后,会一直在一台机上,不调度了

但是这样不调度又不好了

我们在tomcat添加以下配置,实现sessionID不变,却依旧可以调度

官网文档:Apache Tomcat 9 (9.0.87) - Clustering/Session Replication How-To

 <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="8">

          <Manager className="org.apache.catalina.ha.session.DeltaManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"/>

          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
            <Membership className="org.apache.catalina.tribes.membership.McastService"
                        address="228.0.0.4"
                        port="45564"
                        frequency="500"
                        dropTime="3000"/>
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto"
                      port="4000"
                      autoBind="100"
                      selectorTimeout="5000"
                      maxThreads="6"/>

            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
            </Sender>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor"/>
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 filter=""/>
          <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>

          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                    tempDir="/tmp/war-temp/"
                    deployDir="/tmp/war-deploy/"
                    watchDir="/tmp/war-listen/"
                    watchEnabled="false"/>

          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
        </Cluster>

7-3 

再改一处

也是在官方文档里面

7-5

测试:

IP地址在变,但此时的sessionID不变

相关文章:

  • MATLAB中的数据类型,例如double,char,logical等。
  • 【MatLab】之:Simulink安装
  • uniapp-vue3 项目初始化集成配置【开箱即用】
  • 16. UE5 RPG获取GE应用的回调,并根据Tag设置数据显示到窗口
  • 工欲善其事,必先利其器,Markdown和Mermaid的梦幻联动(2)
  • 十三、软考-系统架构设计师笔记-层次式架构设计理论与实践
  • QT使用RabbitMQ
  • sqllab第十八关通关笔记
  • 【研发日记】Matlab/Simulink技能解锁(二)——在Matlab Function编辑窗口Debug
  • 腾讯春招后端一面(八股篇)
  • 【数据结构与算法】:选择排序与快速排序
  • Cesium 获取 3dtileset的包围盒各顶点坐标
  • ​【已解决】npm install​卡主不动的情况
  • 深入浅出:Objective-C中使用MWFeedParser下载豆瓣RSS
  • git svn混用
  • 如何使用 CSS 中的 :root 伪类选择器
  • java学习之路-程序逻辑控制
  • 工具-百度云盘服务-身份认证
  • MySQL大小写敏感、MySQL设置字段大小写敏感
  • 【CKA模拟题】查询消耗CPU最多的Pod
  • 甘肃发布外卖食品安全违法行为典型案例:一商家用鸭肉冒充牛肉被罚
  • 佩斯科夫:若普京认为必要,将公布土耳其谈判俄方代表人选
  • “11+2”复式票,宝山购彩者领走大乐透1170万头奖
  • 线下哪些商家支持无理由退货?查询方法公布
  • 上海国际电影节特设“今日亚洲”单元
  • 体坛联播|巴萨4比3打服皇马,利物浦2比2战平阿森纳