【Linux】Tomcat

发布于:2025-08-11 ⋅ 阅读:(16) ⋅ 点赞:(0)

Tomcat简介

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和 并发访问用户不是很多的场合下被普遍使用,Tomcat 具有处理HTML页面的功能,它还是一个Servlet和 JSP容器

Tomcat的使用

安装java环境

[root@TO1 ~]# yum install java-1.8.0-openjdk.x86_64 -y

安装并启动Tomcat

[root@TO1 mnt]# ls
apache-tomcat-9.0.107  apache-tomcat-9.0.107.tar.gz  hgfs
[root@TO1 mnt]# tar zxf apache-tomcat-9.0.107.tar.gz -C /usr/local/

[root@TO1 local]# cd tomcat/
[root@TO1 tomcat]# cd bin/
[root@TO1 bin]# ./startup.sh

查看端口

[root@TO1 ~]# netstat -antlupe | grep java

Tomcat相关文件

bin 服务启动、停止等相关程序和文件
conf 配置文件
lib 库目录
logs 日志目录
webapps 应用程序 应用部署目录,相当于nginx的默认发布目录
work jsp 编译后的结果文件,建议提前预热访问

启动Tomcat

访问Tomcat

生成Tomcat启动文件

#生成tomcat的主配置文件
[root@TO1 local]# vim /usr/local/tomcat/conf/tomcat.conf
#配置文件内容---------------------------------------------------------
JAVA_HOME=/etc/alternatives/jre
---------------------------------------------------------------------
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@TO1 local]# useradd -s /sbin/nologin -M tomcat
[root@TO1 local]# chown tomcat.tomcat /usr/local/tomcat/ -R

[root@TO1 bin]# systemctl enable --now tomcat.service

利用nginx反向代理Tomcat以及基于cookie的session绑定

在nginx服务器上编写配置文件达到如下图代理方式

nginx配置文件内容:

upstream tomcat{
        hash $cookie_JSESSIONID;
        server 172.25.254.15:8080;
        server 172.25.254.16:8080;
}
server {
        listen 80;
        server_name www.jie.org;
        location ~\.jsp$ {
                proxy_pass http://tomcat;

        }
}

编写Tomcat测试文件测试

测试效果:

session 共享服务器

Memcached简介

Memcached 是一款开源的高性能分布式内存对象缓存系统,主要用于减轻数据库负载、加速动态 Web 应用的响应速度。它通过将频繁访问的数据存储在内存中,避免了重复的数据库查询或计算操作,从而显著提升应用性能

msm 介绍

Memcached Session Manager(简称 MSM)是一个用于 Java Web 应用 的会话管理工具,它通过将用户会话(Session)数据存储在 Memcached 分布式缓存中,实现了会话的共享与高可用,特别适用于集群环境下的会话同步需求

image-20250809024823457

安装memcache、将监听地址改为全部

 [root@TO1 ~]# yum install memcached -y
 [root@TO1 ~]# vim /etc/sysconfig/memcached
 PORT="11211"
 USER="memcached"
 MAXCONN="1024"
 CACHESIZE="64"
 OPTIONS="-l 0.0.0.0,::1"
 ​
 ​
 [root@TO1 ~]# systemctl enable --now memcached

将相关jar包添加到/usr/local/tomcat/bin/中

image-20250809024832865

修改tomcat配置

[root@TO1 jar]# vim /usr/local/tomcat/conf/context.xml
 #添加以下内容
  <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
         memcachedNodes="n1:172.25.254.15:11211,n2:172.25.254.16:11211"
         failoverNodes="n1"
         requestUriIgnorePattern=".*\.(ico|png|gif|jpg|css|js)$"
         transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory"
             />

image-20250809024838852

image-20250809024843417

测试效果:


网站公告

今日签到

点亮在社区的每一天
去签到