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?分布式緩存中,實現了會話的共享與高可用,特別適用于集群環境下的會話同步需求
安裝memcache、將監聽地址改為全部
[root@TO1 ~]# yum install memcached -y[root@TO1 ~]# vim /etc/sysconfig/memcachedPORT="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/中
修改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"/>
測試效果: