tomcat session cluster

使用httpd反代负载均衡后端tomcat,tomcat使用自带的集群服务实现会话集群;

实现环境:

node1:172.18.11.111 TomcatA

node2:172.18.11.112 TomcatB

node3:172.18.11.113 反代调度器httpd

分别在node1和node2上安装tomcat:

]# vim /etc/profile.d/java.sh

export JAVA_HOME=/usr

]# . /etc/profile.d/java.sh

]# yum install tomcat tomcat-lib tomcat-webapps tomcat-admin-webapps -y

]# cd /var/lib/tomcat/webapps/

]# mkdir testapp

]# cd testapp/

]# mkdir classes lib WEB-INF META-INF

]# vim /var/lib/tomcat/webapps/testapp/test.jsp

<%@ page language="java" %>

<html>

<head><title>TomcatA</title></head>

<body>

<h1><font color="red">TomcatA.magedu.com</font></h1>

<table align="centre" border="1">

<tr>

<td>Session ID</td>

<% session.setAttribute("magedu.com","magedu.com"); %>

<td><%= session.getId() %></td>

</tr>

<tr>

<td>Created on</td>

<td><%= session.getCreationTime() %></td>

</tr>

</table>

</body>

</html>

]# scp -r /var/lib/tomcat/webapps/testapp/ node2:/var/lib/tomcat/webapps/

]# vim /etc/tomcat/server.xml

添加在host配置段:

<Context path="/test" docBase="testapp"/>

在node2:

]# vim /var/lib/tomcat/webapps/testapp/test.jsp

<%@ page language="java" %>

<html>

<head><title>TomcatB</title></head>

<body>

<h1><font color="blue">TomcatB.magedu.com</font></h1>

<table align="centre" border="1">

<tr>

<td>Session ID</td>

<% session.setAttribute("magedu.com","magedu.com"); %>

<td><%= session.getId() %></td>

</tr>

<tr>

<td>Created on</td>

<td><%= session.getCreationTime() %></td>

</tr>

</table>

</body>

</html>

分别启动node1和node2上的tomcat:

]# systemctl start tomcat.service

]# ss -tnl 监听在8080端口;

(1)配置tomcat启用集群:

在node1:

]# vim /etc/tomcat/server.xml

在node2:

]# vim /etc/tomcat/server.xml

(2)添加<distributable/>指令:

在node1:

]# cp /etc/tomcat/web.xml /var/lib/tomcat/webapps/testapp/WEB-INF/

]# vim /var/lib/tomcat/webapps/testapp/WEB-INF/web.xml

添加:<distributable/>

把该配置文件复制一份到node2上:

]# scp /var/lib/tomcat/webapps/testapp/WEB-INF/web.xml node2:/var/lib/tomcat/webapps/testapp/WEB-INF/

在node1和node2分别启动tomcat:

]# systemctl start tomcat.service

在node3上:

使用httpd的mod_proxy模块、mod_proxy_ajp模块、mod_proxy_balancer模块:

httpd使用ajp模块就意味着tomcat只能使用ajp链接器了。

安装httpd:

]# yum -y install httpd

]# vim /etc/httpd/conf.d/mod_proxy_ajp.conf

]# httpd -t

]# systemctl start httpd.service

在浏览器输入:http://172.18.11.113/test/test.jsp

基于调度器后端不同主机,但会话保持不变;

以上就是基于tomcat会话集群方式实现会话保持的。

时间: 2024-07-29 00:16:52

tomcat session cluster的相关文章

Nginx+tomcat session cluster会话保持实验

Nginx+tomcat session cluster会话保持实验 实验要求: 1.nginx+tomcat 负载均衡 2.会话保持 实验拓扑 ip网络规划 Nginxnode2:172.16.76.20 tomcatAnode3:172.16.76.30 tomcatBnode4:172.16.76.40 基础配置 node2: [[email protected]~]# yum install nginx –y    node3:     [[email protected]~]# yum

Session会话保持机制的原理与Tomcat Session Cluster示例

一.Session的定义 在计算机科学中,特别是在网络中,session是两个或更多个通信设备之间或计算机和用户之间的临时和交互式信息交换.session在某个时间点建立,然后在之后的某一时间点拆除.建立的通信session可以在每个方向上涉及多个消息.session通常是有状态的,这意味着至少一个通信部分需要保存关于会话历史的状态信息以便能够进行通信,而在无状态通信中,通信由具有响应的独立请求组成.--Wikipedia Session:在计算机中,尤其是在网络应用中,称为"会话控制"

Tomcat的基础知识和一些应用,session cluster和session server

Tomcat简单来说就是JAVA 2 EE 加上Servlet和JSP类库的实现,tomcat=JWS(Sun)+ Jserv(ASF) Tomcat的核心组件: catalina:servlet container Coyote:http connection Jasper:JSP Engine 执行引擎 TomcatInstance: 运行中的tomcat进程(java进程) Server:即一个tomcat实例: Service:用于将connector关联至engine组件:一个serv

高性能Web服务之Httpd负载均衡Tomcat实现Session Sticky及Session Cluster

Httpd负载均衡Tomcat实现Session Sticky及Session Cluster架构如下所示: 实现过程如下: 配置tomcat服务(tomcat1\tomcat2) (1)安装JDK # rpm -ivh jdk-7u9-linux-x64.rpm  --安装JDK后生成的文件 # cd /usr/java/ ; ll total 4 lrwxrwxrwx  1 root root   16 Sep 27 09:09 default -> /usr/java/latest drw

Apache Httpd负载均衡Tomcat并实现Session Sticky和Session Cluster 大纲

Apache Httpd负载均衡Tomcat并实现Session Sticky和Session Cluster 大纲 前言 实验拓扑 实验步骤 安装配置tomcat 安装配置Apache Httpd并测试 实现session sticky 实现Session Cluster 总结 前言 上篇文章我们介绍如何构建一个LANMT平台并搭建一个jspxcms, 这次我们介绍使用apache httpd负载均衡Tomcat并实现Session Sticky和Session Cluster 实验拓扑 实验

38 tomcat lb cluster、memcached和msm、msm及jvm虚拟机性能监控、tcpdump和nc工具的使用

01 tomcat lb cluster 配置环境 node1 192.168.1.131 CentOS 7.2 node4 192.168.1.132 CentOS 7.2 node3 192.168.1.133 CentOS 7.2 1.如何部署多个tomcat实例向用户提供服务 #node4结点配置tomcat [[email protected] ~]# tar xf apache-tomcat-8.0.38.tar.gz -C /usr/local/ [[email protected

Memcached + MSM 实现Tomcat Session保持

Memcached + MSM 实现Tomcat Session保持 tomcat memcached 大纲 前言 Memcached介绍 MSM介绍 实验拓扑 实验环境 实验步骤 安装配置Tomcat 安装配置Nginx负载均衡 安装配置Memcached + MSM 总结 前言 上篇文章我们实现了session sticky和session cluster实现用户session的保持, 这篇文章主要介绍使用Memcached + MSM来实现用户session的保持 Memcached介绍

Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享

Redis+Tomcat+Nginx集群实现Session共享,Tomcat Session共享 ============================= 蕃薯耀 2017年11月27日 http://www.cnblogs.com/fanshuyao/ 代码美化版或附件下载见:http://fanshuyao.iteye.com/blog/2400975 一.Session共享使用tomcat-cluster-redis-session-manager插件实现 插件地址见:https://g

tomcat session server实现会话绑定

tomcat session server 此前已经进行过Tomcat的其他配置信息,这里不再进行重复的描述,会把重要的地方写上,不会影响实验 要想能够实现追踪有状态的web apps,对应的状态信息,有三种方式 session stickysession replication clustersession server 这里实现session server的实现方式 memcached可以借助于第三方的项目所提供的功能,实现使用memcached保存用户的session信息,项目称为MSM,