tomcat

tomcat做的事情:

开启监听端口监听用户的请求,解析用户发来的http请求,然后访问到你指定
的应用系统,然后你返回的页面经过tomcat返回给用户

【server1,server2】

1)安装jdk和tomcat
tar zxf jdk-7u79-linux-x64.tar.gz -C /usr/local/
tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/

2)做好软连接便于访问
cd /usr/local
ln -s jdk1.7.0_79/ java
ln -s apache-tomcat-7.0.37/ tomcat

在这里插入图片描述
3)配置环境变量

vim /etc/profile

##添加到文件末尾
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin

source /etc/profile   ##使配置文件生效

在这里插入图片描述
在这里插入图片描述
##查看是否添加成功

 echo $PATH
 echo $CLASSPATH
 echo $JAVA_HOME
 which java
 which javac

在这里插入图片描述
vim test.java

public class test
{
    public static void main(String[] args)
    {
        System.out.println("Hello java");
    }
}

在这里插入图片描述

javac test.java
java test
cd /usr/local/tomcat
bin/startup.sh

在这里插入图片描述
在这里插入图片描述
编写页面测试:

cd /usr/local/tomcat/webapps/ROOT/
vim test.jsp

【server1】
server1-The time is: <%=new java.util.Date() %>
【server2】
server2-The time is: <%=new java.util.Date() %>

测试:
网页访问:172.25.78.1:8080/test.jsp
网页访问:172.25.78.2:8080/test.jsp

vim test.jsp
server1:
在这里插入图片描述
server2:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

【server1】
vim /usr/local/lnmp/nginx/conf/nginx.conf
2:user nginx nginx;

20    upstream tomcat {
21        server 172.25.78.1:8080;
22        server 172.25.78.2:8080; 
23:     }
48 location / {
49            root   /usr/local/tomcat/webapps/ROOT;
50            index  index.html index.htm;
51        }
52       location ~ \.jsp$ {
53           proxy_pass   http://tomcat;
54        }
nginx -t
nginx  ##启动nginx

http://172.25.78.1:8080 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4)增加测试页面:

【server1,server2】

vim /usr/local/apache-tomcat-7.0.37/webapps/ROOT/test.jsp

<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="java.util.*" %>
<html><head><title>Cluster App Test</title></head>
<body>
Server Info:
<%
out.println(request.getLocalAddr() + " : " + request.getLocalPort()+"<br>");%>
<%
out.println("<br> ID " + session.getId()+"<br>");
String dataName = request.getParameter("dataName");
if (dataName != null && dataName.length() > 0) {
String dataValue = request.getParameter("dataValue");
session.setAttribute(dataName, dataValue);
}
out.print("<b>Session list</b>");
Enumeration e = session.getAttributeNames();
while (e.hasMoreElements()) {
String name = (String)e.nextElement();
String value = session.getAttribute(name).toString();
out.println( name + " = " + value+"<br>");
System.out.println( name + " = " + value);
}
%>
<form action="test.jsp" method="POST">
name:<input type=text size=20 name="dataName">
<br>
key:<input type=text size=20 name="dataValue">
<br>
<input type=submit>
</form>
</body>
</html>

测试:
http://172.25.78.1:8080/test.jsp  ##多次点击访问,server1和server2会切换的访问

vim /usr/local/apache-tomcat-7.0.37/webapps/ROOT/test.jsp
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
【server1】

5)在nginx配置文件中增加tomcat模块,
  为了实现session共享,需要支持sticky(粘滞)模块,
  nginx-1.14不支持sticky,
  所以使用nginx-1.10版本,重新编译nginx

###注意:将/usr/local/lnmp/nginx 目录全部删除 再次编译

cd /usr/local/lnmp/nginx/  ---->  ls 
rm -fr *
nginx -s stop   ##将之前的nginx 停止

在这里插入图片描述

tar zxf nginx-sticky-module-ng.tar.gz -C /usr/local/
tar zxf nginx-1.10.1.tar.gz

在这里插入图片描述
在这里插入图片描述

cd nginx-1.10.1
##编译:
./configure --prefix=/usr/local/lnmp/nginx   --with-http_ssl_module --add-module=/usr/local/nginx-sticky-module-ng 

make && make install
ln -s /usr/local/lnmp/nginx/sbin/nginx /sbin/

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

vim /usr/local/lnmp/nginx/conf/nginx.conf
1: user  nginx nginx;

20:添加
upstream tomcat {
        sticky;
        server 172.25.0.1:8080;
        server 172.25.0.2:8080;

}
39:gzip  on; #开启gzip
将48--51注释
52:
   location / {
      root   /usr/local/tomcat/webapps/ROOT;
      index  index.html index.htm;
   }
   location ~ \.jsp$ {
      proxy_pass   http://tomcat;
   }

nginx 
多次刷新页面,访问的ID号不会变,实现了sticky

vim /usr/local/lnmp/nginx/conf/nginx.conf
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
接下来实现session共享:

【server1,server2 都做 1) 和 2)】

1) 将 lnmp/jar/ 下的所有目录拷贝到 /usr/local/tomcat/lib/ 目录下

cp lnmp/jar/*  /usr/local/tomcat/lib/
cd /usr/local/tomcat/lib/  --- > ls
rm -fr memcached-session-manager-tc6-1.6.3.jar  ##删除

在这里插入图片描述

2)加入session共享配置,context.xml 该文件的作用是配置各种数据库的连接池

vim  /usr/local/tomcat/conf/context.xml
##一定要添加在 41:</Context> 前面
<Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
memcachedNodes="n1:172.25.78.1:11211,n2:172.25.78.2:11211"
failoverNodes="n1"            ##【server1--> n1】【server2--> n2】
requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
/>
 
XML概念
xml常用于数据存储和传输,文件后缀为 .xml
它是可扩展标记语言(Extensible Markup Language,简称XML),是一种标记语言
标记,指计算机所能理解的信息符号; 
通过此种标记,计算机之间可以处理包含各种信息的文章等
	1 标记,指计算机所能理解的信息符号; 
	2 通过此种标记,计算机之间可以处理包含各种信息的文章等。
XML设计用来传送及携带数据信息,不用来表现或展示数据,所以XML用途的焦点是它说明数据是什么,以及携带数据信息。而HTML语言则用来表现数据

server1:
在这里插入图片描述
server2:

在这里插入图片描述
【server1,server2 都做】:

3)
cd /usr/local/tomcat/lib
yum install memcached -y
systemctl start memcached 
 
  保存并启动tomcat 
cd /usr/local/tomcat/
bin/startup.sh

网页:172.25.78.1/test.jsp

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4)再次测试,如果n1挂了,session不会被重置

###注意测试的时候:想更改n1 n2 的时候 可以手动停掉server1 server2上的tomcat和memcached
##停止一端的memcache 
yum install telnet -y
 telnet localhost 11211
 get + ID

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值