028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

如何实现Nginx+tomcat负载均衡的会话保持

小编给大家分享一下如何实现Nginx+tomcat负载均衡的会话保持,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联公司是一家专注于网站设计制作、网站建设与策划设计,淇县网站建设哪家好?创新互联公司做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:淇县等地区。淇县做网站价格咨询:028-86922220

 什么是会话保持

会话是指一个终端用户与交互系统进行通讯的过程,比如从输入账户密码进入操作系统到退出操作系统就是一个会话过程。会话较多用于网络上,TCP的三次握手就创建了一个会话,TCP关闭连接就是关闭会话。

Http协议是一种无状态协议,所以需要使用Session机制来保存用户的状态,比如登录状态、常用信息等。

如何实现Nginx+tomcat负载均衡的会话保持

Session用于保存一次会话的相关信息,可以实现在多个页面之间共享这些数据。

如何实现Nginx+tomcat负载均衡的会话保持

如何实现Nginx+tomcat负载均衡的会话保持

例如:你打开淘宝登录了个人账号,即使你浏览了再多的店铺宝贝,切换了很多的页面,用户名是不变的,这个就是Session起的作用。直到你关闭浏览器,Session被销毁,才会清除掉之前的登录记录。

今天和大家分享“Nginx+tomcat实现负载均衡的会话保持”就是实现:如果网站某个负载节点挂掉,请求被分配到新节点Session也会同步过来,实现会话保持,由此保证用户无感知的浏览。

实现原理

如何实现Nginx+tomcat负载均衡的会话保持

实验配置

Nginx配置

如何实现Nginx+tomcat负载均衡的会话保持

测试环境单台服务器开了两个tomcat,一台对应8080端口,另一台对应8090端口。

创建TomcatA TomcatB,分别配置tomcat server.xml

复制以下内容到 Engine下

添加此模块:

如何实现Nginx+tomcat负载均衡的会话保持

                                

备注:

1.classname配置tomcat集群在进行信息传递时互相使用什么类来进行传递

2.manager决定如何管理集群的session信息

3.Channel是Tomcat节点之间进行通讯的工具。

4.Membership维护集群的可用节点列表。用于检测新增节点及掉线节点

5.Receiver : 接收器

如果port为4000,autoBind为100,接收器将在4000-4099间取一个端口,进行监听

6.sender:发送器负责发送消息

    

7.Valve :过滤器

8.Deployer:同步集群下的所有节点的一致性

9.ClusterListener :  监听器,监听Cluster组件接收的消息,使用DeltaManager时,Cluster接收的信息通过ClusterSessionListener传递给DeltaManager

配置web.xml

在web.xml中添加属性,用于告诉web容器,该项目属于分布式项目

添加标签到web项目WEB-INF目录

如何实现Nginx+tomcat负载均衡的会话保持

会话保持验证

webapps/ROOT/index.jsp 创建测试页面获取sessionID

tomcatA  <%@ page language="java" %>    TomcatA    

TomcatA

      Session ID  <% session.setAttribute("TomcatA","TomcatA"); %>  <%= session.getId() %>      Created on  <%= session.getCreationTime() %>        tomcatB <%@ page language="java" %>   TomcatB    

TomcatB

      Session ID  <% session.setAttribute("TomcatB","TomcatB"); %>  <%= session.getId() %>      Created on  <%= session.getCreationTime() %>       

浏览器访问验证

如何实现Nginx+tomcat负载均衡的会话保持

如何实现Nginx+tomcat负载均衡的会话保持

以上是“如何实现Nginx+tomcat负载均衡的会话保持”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网站名称:如何实现Nginx+tomcat负载均衡的会话保持
当前路径:http://www.tsicrk.com/article/jgsogs.html

其他资讯

让你的专属顾问为你服务

2.4288s