TOMCAT实验

TOMCAT

一、TOMCAT功能介绍

1.1 安装TOMCAT

配置Java环境

[root@tomcat1 ~]#  yum install java-1.8.0-openjdk.x86_64 -y
[root@tomcat2 ~]#  dnf install java-1.8.0-openjdk.x86_64 -y

Java环境被存放在 /etc/alternatives/目录下

[root@tomcat1 ~]# ls /etc/alternatives/jre_openjdk

在这里插入图片描述
解压tomcat安装包到/usr/local/目录下,并制作软连接tomcat

[root@tomcat1 ~]# tar zxf apache-tomcat-9.0.93.tar.gz -C /usr/local/
[root@tomcat1 ~]# cd /usr/local/
[root@tomcat1 local]# ls
apache-tomcat-9.0.93  bin  etc  games  include  lib  lib64  libexec  sbin  share  src
[root@tomcat1 local]# ln -s apache-tomcat-9.0.93 tomcat
[root@tomcat1 local]# ls
apache-tomcat-9.0.93  bin  etc  games  include  lib  lib64  libexec  sbin  share  src  tomcat
[root@tomcat1 local]# cd tomcat/
[root@tomcat1 tomcat]# ls
bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  work
[root@tomcat1 tomcat]# ls
bin  BUILDING.txt  conf  CONTRIBUTING.md  lib  LICENSE  logs  NOTICE  README.md  RELEASE-NOTES  RUNNING.txt  temp  webapps  work
bin->执行命令 conf->配置文件 lib->库 logs->日志 temps->临时文件 webapps->默认发布目录 work->工作目录

启动tomcat,查看端口

[root@tomcat1 bin]# ./startup.sh
[root@tomcat1 bin]# netstat -anltupe | grep java

在这里插入图片描述
浏览器访问
在这里插入图片描述

1.2 生成TOMCAT的启动文件

先进入conf文件中,看有没有相关编辑文件
在这里插入图片描述
没有,新建conf配置文件

[root@tomcat1 conf]# vim tomcat.conf
JAVA_HOME=/etc/alternatives/jre_openjdk

内容注释:JAVA配置环境

[root@tomcat1 conf]# vim /lib/systemd/system/tomcat.service
[Unit]
Description=Tomcat --- 服务名称
#After=syslog.target network.target remote-fs.target nss-lookup.target
After=syslog.target network.target --- 启动必须条件
[Service]
Type=forking --- 启动函数
EnvironmentFile=/usr/local/tomcat/conf/tomcat.conf ---配置文件
ExecStart=/usr/local/tomcat/bin/startup.sh --- 开启脚本
ExecStop=/usr/local/tomcat/bin/shutdown.sh --- 关闭脚本
PrivateTmp=true
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target

编写执行脚本

[root@tomcat1 conf]# vim/lib/systemd/system/tomcat.service
#!/bin/bash
case $1 in
  start)
  /usr/local/tomcat/bin/startup.sh
  ;;
  stop)
  /usr/local/tomcat/bin/shutdown.sh
  ;;
esac

添加可执行权限
[root@tomcat1 conf]# chmod +x /usr/bin/tomcat

在这里插入图片描述
编写完脚本后,也可将原先配置文件变为如下内容
在这里插入图片描述
建立tomcat用户
在这里插入图片描述
启动tomcat却出现报错,分析报错原因
在这里插入图片描述
journalctl -xe查看
在这里插入图片描述
报错信息中发现Permission denied 应该是拒绝访问,也就是没有权限

需要去做文件生成,但是并没有权限
在这里插入图片描述
加权后再重启就成功了
配置完成后,将node1的配置文件内容发送到node2
在这里插入图片描述
node2进行下列编辑
在这里插入图片描述
然后启动后查询
在这里插入图片描述
在这里插入图片描述

二、结合反向代理实现tomcat部署

2.1 常见部署方式

在这里插入图片描述

2.2 负载均衡的实现

将test.jsp拷贝,同时发送给tomcat2主机
[root@tomcat1 ~]# cp test.jsp /usr/local/tomcat/webapps/ROOT/
[root@tomcat1 ~]# scp test.jsp root@172.25.254.20:/usr/local/tomcat/webapps/ROOT/
拷贝后浏览器访问
在这里插入图片描述
session作用
在这里插入图片描述
cookie保存客户端,session保存服务器
浏览器关闭,cookie消失
默认下,tomcat可以对session进行复制,可以使用两个tomcat从而实现session的稳定性
编辑内容完成代理,浏览器访问查询
在这里插入图片描述

在这里插入图片描述
负载均衡
在这里插入图片描述
在这里插入图片描述
随着刷新,实现在10与20不断变换
在这里插入图片描述
在这里插入图片描述
但是,由于是两台机器进行tomcat配置,提交内容无法进行保存。
接下来将针对该问题进行会话保持
在这里插入图片描述
此时再刷新,会话也不会发生变化
在这里插入图片描述
此时提交数据,数据会得到保存
在这里插入图片描述
但是现在还有一个问题,如果我新开一个界面,他并没有完成负载均衡,还是10地址进行hash算法(原因是我们是同一个浏览器,原地址hash,会自动跳转到10端)
通俗来讲就是,原先是ip_hash,同一台电脑肯定访问同一个服务器,但是我们要对不同的name,即test1与test2不同来实现负载均衡,方法:对cookie进行hash算法。
在这里插入图片描述
在这里插入图片描述
负载均衡完毕

2.3 Session的会话保持

在这里插入图片描述
此刻如果把10挂了那么数据也将丢失
在这里插入图片描述
接下来将使用memcache进行数据保存
在这里插入图片描述
下载memcache软件包
在这里插入图片描述
因为需要tomcat去连接,所以需要去配置文件中编辑
在这里插入图片描述

在这里插入图片描述
改完重启
含义:在所有网络上都可将11211端口连接
20机同理
重启后进行端口查询
在这里插入图片描述
下载telnet安装包实现连接
在这里插入图片描述
在这里插入图片描述
连接后可以实现编辑,报错原因:限制2个字节。
在这里插入图片描述
add添加 get查询
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置完浏览器访问,确认无误
在这里插入图片描述
现在在20上,把20关闭重新尝试
在这里插入图片描述
说明交叉存储成功

  • 22
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值