发布
上线的代码有两种方式:
第一种方式是直接将程序目录放在webapps目录下面,这种方式大家已经明白了,就不多说了。
第二种方式是使用开发工具将程序打包成war包,然后上传到webapps目录下面。
发布项目的流程应该不难,主要讲解一下里里面的一些简单配置
- 自定义默认网站目录
修改默认发布目录:
[root@java-tomcat1 ~]# mkdir /data/application/webapp #创建发布目录
[root@java-tomcat1 ~]# vim /data/application/tomcat/conf/server.xml
将原来的
修改为 当然也可以修改为其他的
将原来的
修改为
Tomcat多实例配置
多实例(多进程):同一个程序启动多次,分为两种情况:
第一种:一台机器跑多个站点;
第二种:一个机器跑一个站点多个实例,配合负载均衡
1、复制程序文件
[root@java-tomcat1 ~]# cd /data/application/
[root@java-tomcat1 application]# ls
tomcat
[root@java-tomcat1 application]# cp -r tomcat/ tomcat_2
[root@java-tomcat1 application]# ls
tomcat tomcat_2
修改端口,以启动多实例。多实例之间端口不能一致
[root@java-tomcat1 application]# sed -i 's#8005#8011#;s#8080#8081#' tomcat/conf/server.xml
[root@java-tomcat1 application]# sed -i 's#8005#8012#;s#8080#8082#' tomcat_2/conf/server.xml
[root@java-tomcat1 application]# sed -i 's#8009#8019#' tomcat/conf/server.xml
[root@java-tomcat1 application]# sed -i 's#8009#8029#' tomcat_2/conf/server.xml
[root@java-tomcat1 application]# diff tomcat/conf/server.xml tomcat_2/conf/server.xml #对比文件不同之处
22c22
< <Server port="8011" shutdown="SHUTDOWN">
---
> <Server port="8012" shutdown="SHUTDOWN">
67c67
< Define a non-SSL/TLS HTTP/1.1 Connector on port 8081
---
> Define a non-SSL/TLS HTTP/1.1 Connector on port 8082
69c69
< <Connector port="8081" protocol="HTTP/1.1"
---
> <Connector port="8082" protocol="HTTP/1.1"
75c75
< port="8081" protocol="HTTP/1.1"
---
> port="8082" protocol="HTTP/1.1"
115,116c115,116
< <!-- Define an AJP 1.3 Connector on port 8019 -->
< <Connector port="8019" protocol="AJP/1.3" redirectPort="8443" />
---
> <!-- Define an AJP 1.3 Connector on port 8029 -->
> <Connector port="8029" protocol="AJP/1.3" redirectPort="8443" />
启动tomcat多实例
[root@java-tomcat1 application]# cp -r /opt/webapps/ROOT/ tomcat/webapps/
[root@java-tomcat1 application]# cp -r /opt/webapps/ROOT/ tomcat_2/webapps/
[root@java-tomcat1 application]# echo 8081 >> tomcat/webapps/ROOT/index.jsp
[root@java-tomcat1 application]# echo 8082 >> tomcat_2/webapps/ROOT/index.jsp
启动:
[root@java-tomcat1 application]# cd /data/application/tomcat_2/bin/
[root@java-tomcat1 bin]# vim start.sh
#!/bin/bash
#tomcat_2
export CATALINA_BASE="/data/application/tomcat_2"
case "$1" in
start)
$CATALINA_BASE/bin/startup.sh
;;
stop)
$CATALINA_BASE/bin/shutdown.sh
esac
[root@java-tomcat1 bin]# chmod +x start
#修改catalina.sh ---添加如下内容
[root@java-tomcat1 bin]# vim catalina.sh
CATALINA_HOME=/data/application/tomcat_2 #添加的环境变量注意修改
[root@java-tomcat1 bin]# cd /data/application/tomcat/bin/
[root@java-tomcat1 bin]# vim start.sh
#!/bin/bash
#tomcat
export CATALINA_BASE="/data/application/tomcat"
case "$1" in
start)
$CATALINA_BASE/bin/startup.sh
;;
stop)
$CATALINA_BASE/bin/shutdown.sh
esac
[root@java-tomcat1 bin]# chmod +x start.sh
[root@java-tomcat1 bin]# vim catalina.sh
CATALINA_HOME=/data/application/tomcat
# 如果多实例部署使用JDK版本不同,修改catalina.sh再这里定义java
JAVA_HOME=
JRE_HOME=
启动:
[root@java-tomcat1 ~]# /data/application/tomcat/bin/start.sh start
[root@java-tomcat1 ~]# /data/application/tomcat_2/bin/start.sh start
检查端口查看是否启动:
[root@java-tomcat1 application]# netstat -lntp | grep java
tcp6 0 0 127.0.0.1:8011 :::* LISTEN 1729/java
tcp6 0 0 127.0.0.1:8012 :::* LISTEN 1783/java
tcp6 0 0 :::8081 :::* LISTEN 1729/java
tcp6 0 0 :::8082 :::* LISTEN 1783/java
tcp6 0 0 :::8019 :::* LISTEN 1729/java
tcp6 0 0 :::8029 :::* LISTEN 1783/java
2、在浏览器访问,进行测试
检查多实例的启动
http://192.168.50.114:8081/
http://192.168.50.114:8082/
tomcat反向代理集群
1、负载均衡器说明
关闭防火墙和selinux
yum安装nginx
[root@nginx-proxy ~]# cd /etc/yum.repos.d/
[root@nginx-proxy yum.repos.d]# vim nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
[root@nginx-proxy yum.repos.d]# yum install yum-utils -y
[root@nginx-proxy yum.repos.d]# yum install nginx -y
2、配置负载均衡器
备份原配置文件并修改
[root@nginx-proxy ~]# cd /etc/nginx/conf.d/
[root@nginx-proxy conf.d]# cp default.conf default.conf.bak
[root@nginx-proxy conf.d]# mv default.conf tomcat.conf
[root@nginx-proxy conf.d]# vim tomcat.conf
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/proxy.access.log main;
location / {
proxy_pass http://testweb;
proxy_set_header Host $host:$server_port;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
创建upstream配置文件:
[root@nginx-proxy conf.d]# vim upstream.conf
upstream testweb {
server 192.168.50.114:8081 weight=1 max_fails=1 fail_timeout=2s;
server 192.168.50.114:8082 weight=1 max_fails=1 fail_timeout=2s;
}
启动nginx
[root@nginx-proxy ~]# systemctl start nginx
3、使用命令进行访问测试
使用curl 命令进行测试,tail进行关键字提取
[root@nginx-proxy ~]# curl -s 192.168.50.118 | tail -1
8082
[root@nginx-proxy ~]# curl -s 192.168.50.118 | tail -1
8081
4、在浏览器上进行访问测试
http://192.168.50.118/文章来源:https://www.toymoban.com/news/detail-724520.html
http://192.168.50.118/
文章来源地址https://www.toymoban.com/news/detail-724520.html
到了这里,关于Tomcat站点部署与多实例配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!