Tomcat 简介
- Tomcat 是一个免费的开源的 Serlvet 容器,它是 Apache 基金会的 Jakarta 项目中的一个核心项目;
- 由 Apache,Sun 和其它一些公司及个人共同开发而成。
- 与传统的桌面应用程序不同,Tomcat 中的应用程序是一个 WAR(Web Archive)文件。
- WAR 是 Sun 提出的一种 Web 应用程序格式,与 JAR 类似,也是许多文件的一个压缩包。
安装 Tomcat 服务
准备工作:
主机名 |
操作系统 |
IP地址 |
Tomcat-A |
CentOS 7.x |
192.168.1.1 |
安装配置 Tomcat
- 安装 JDK:下载地址(需要创建 Oracle 账号)
[root@Tomcat-A ~]# ls anaconda-ks.cfg apache-tomcat-8.5.16.tar.gz jdk-8u91-linux-x64.tar.gz [root@Tomcat-A ~]# tar zxf jdk-8u91-linux-x64.tar.gz [root@Tomcat-A ~]# mv jdk1.8.0_91/ /usr/local/java [root@Tomcat-A ~]# cat <<END >> /etc/profile
|
编辑内容如下:
export JAVA_HOME=/usr/local/java export PATH=$PATH:/usr/local/java/bin END
|
[root@Tomcat-A ~]# source /etc/profile [root@Tomcat-A ~]# java -version # 查看 Java 版本号
|
[root@Tomcat-A ~]# wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.16/bin/apache-tomcat-8.5.16.tar.gz [root@Tomcat-A ~]# tar zxf apache-tomcat-8.5.16.tar.gz [root@Tomcat-A ~]# mv apache-tomcat-8.5.16 /usr/local/tomcat8 [root@Tomcat-A ~]# /usr/local/tomcat8/bin/startup.sh # 启动 Tomcat [root@Tomcat-A ~]# netstat -anpt | grep 8080 # Tomcat 的工作端口 [root@Tomcat-A ~]# netstat -anpt | grep java # 查看 Java 端口号
|
注解:
8005
端口:用 shutdown.sh
关闭 Tomcat 的时候需要用到的端口号,如果此端口没启动,Tomcat 不能用 shutdown 命令关闭。
8009
端口:是 Tomcat 负责和其他的 HTTP 服务器建立连接的端口,如 Nginx 和 Apache 互通时使用。(AJP/1.3 协议)
8080
端口:HTTP 访问时使用的端口。(HTTP/1.1 协议)
验证
配置 Java 的 Web 目录
[root@Tomcat-A ~]# mkdir -p /web/tomcat [root@Tomcat-A ~]# echo "192.168.1.1:Tomcat-A" > /web/tomcat/index.jsp
|
修改 Tomcat 主配置文件
[root@Tomcat-A ~]# vim /usr/local/tomcat8/conf/server.xml
|
在148-151行添加:
<Context docBase="/web/tomcat" path="" reloadable="false"> </Context>
|
注解:
unpackWARs="true"
:配置自动识别 war 包。
autoDeploy="true"
:开启自动部署。
Context docBase="/web/tomcat"
:网页根目录。
path=""
:设置网页;相当于是 Nginx 中的 Location。
reloadble="false"
:不会自动重新加载 Web 应用,配置为 true 则会根据文件被改动后自动重新加载。
重启 Tomcat 服务
[root@Tomcat-A ~]# /usr/local/tomcat8/bin/shutdown.sh
|
[root@Tomcat-A ~]# /usr/local/tomcat8/bin/startup.sh
|
验证:
负载均衡
准备工作:
主机名 |
操作系统 |
IP地址 |
Tomcat-A |
CentOS 7.x |
192.168.1.1 |
Tomcat-B |
CentOS 7.x |
192.168.1.2 |
Nginx-Server |
CentOS 7.x |
192.168.1.3 |
注意:
Tomcat-A
可以用上面配置;
Tomcat-B
跟 Tomcat-A 步骤一样,但页面要区分开,方便测试;
部署 Nginx 服务器
[root@Nginx-Server ~]# yum -y install pcre-devel zlib-devel popt-devel openssl-devel openssl [root@Nginx-Server ~]# wget http://www.nginx.org/download/nginx-1.18.0.tar.gz [root@Nginx-Server ~]# ls anaconda-ks.cfg nginx-1.18.0.tar.gz [root@Nginx-Server ~]# tar zxf nginx-1.18.0.tar.gz -C /usr/src/ [root@Nginx-Server ~]# cd /usr/src/nginx-1.18.0/ [root@Nginx-Server nginx-1.18.0]# useradd -M -s /sbin/nologin nginx [root@Nginx-Server nginx-1.18.0]# ./configure \ --prefix=/usr/local/nginx \ --user=nginx \ --group=nginx \ --with-http_stub_status_module && make && make install [root@Nginx-Server nginx-1.18.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
|
配置 Nginx 主配置文件
[root@Nginx-Server ~]# vim /usr/local/nginx/conf/nginx.conf
|
在 32 行增加:
upstream tomcat_server { server 192.168.1.1:8080 weight=1; server 192.168.1.2:8080 weight=1; }
|
在 49 行添加:
proxy_pass http://tomcat_server;
|
[root@Nginx-Server ~]# nginx -t # 检查 Nginx 配置文件是否正确 [root@Nginx-Server ~]# nginx # 启用 Nginx 服务 [root@Nginx-Server ~]# ps aux | grep nginx # 查看 Nginx 服务进程 [root@Nginx-Server ~]# netstat -anpt | grep nginx # 查看 Nginx 端口号和进程号
|
验证
使用浏览器访问 Nginx 服务器 IP 地址:
不断刷新页面,观察页面变化:
使用脚本查看效果:
[root@Nginx-Server ~]# for i in $(seq 10);do curl http://192.168.1.3;done
|
原文:blog.csdn.net/weixin_46902396/article/details/122574996