h5网站制作报价,网站建设要做什么,成都网站建设专家,wordpress高并发多实例#xff1a;
在一台服务器上有多台Tomcat#xff1b;就算是多实例
安装telnet服务#xff0c;可以用来测试端口通信是否正常
yum -y install telnettelnet 192.168.220.112 80
tomcat的日志文件
cd /usr/local/tomcat/logsvim catalina.out Tomcat多实例部署
在一台服务器上有多台Tomcat就算是多实例
安装telnet服务可以用来测试端口通信是否正常
yum -y install telnettelnet 192.168.220.112 80
tomcat的日志文件
cd /usr/local/tomcat/logsvim catalina.out Tomcat多实例部署
1.安装好 jdk
cd /opt
rpm -ivh jdk-8u201-linux-x64.rpm
java -version
2.安装 tomcat
cd /opt
tar -xf apache-tomcat-9.0.16.tar.gz
mkdir /usr/local/tomcat
mv apache-tomcat-9.0.16 /usr/local/tomcat/tomcat1
cp -a /usr/local/tomcat/tomcat1 /usr/local/tomcat/tomcat2
3.配置 tomcat 环境变量
vim /etc/profile.d/tomcat.sh#写入下面内容
#tomcat1
export CATALINA_HOME1/usr/local/tomcat/tomcat1
export CATALINA_BASE1/usr/local/tomcat/tomcat1
export TOMCAT_HOME1/usr/local/tomcat/tomcat1#tomcat2
export CATALINA_HOME2/usr/local/tomcat/tomcat2
export CATALINA_BASE2/usr/local/tomcat/tomcat2
export TOMCAT_HOME2/usr/local/tomcat/tomcat2#刷新配置文件
source /etc/profile.d/tomcat.sh
4.修改 tomcat2 中的 server.xml 文件要求各 tomcat 实例配置不能有重复的端口号
vim /usr/local/tomcat/tomcat2/conf/server.xml#22行修改Server prot默认为8005 - 修改为8006
Server port8006 shutdownSHUTDOWN
#69行修改Connector portHTTP/1.1 默认为8080 - 修改为8081
Connector port8081 protocolHTTP/1.1
#116行修改Connector port AJP/1.3默认为8009 - 修改为8010
Connector port8010 protocolAJP/1.3 redirectPort8443 /---------------------------------------------------------------------------------------------------------- 第一个连接器默认监听8080端口负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时使用的就是这个连接器。 第二个连接器默认监听8009端口负责和其他的HTTP服务器建立连接。 在把Tomcat与其他HTTP服务器集成时需要用到这个连接器。
第三个连接器 port8010指定AJP连接器监听的端口号。在这个示例中AJP连接器监听在8010端口上。
protocolAJP/1.3指定连接器所使用的协议。这里设置为AJP/1.3表示使用AJP协议的版本1.3。
redirectPort8443指定重定向端口。当AJP连接器接收到HTTP请求时如果请求是通过HTTPS加密访问的 则会将请求重定向到8443端口。
AJP连接器用于将静态资源和动态请求从前端Web服务器如Apache HTTP Server转发到Tomcat服务器。 这样可以将Tomcat服务器隐藏在防火墙之后提高安全性同时提供更高的性能特别是在处理动态请求时。 常见的AJP连接器配置是为了将Tomcat与Apache HTTP Server或Nginx等前端服务器集成以实现负载均衡、反向代理等功能 ----------------------------------------------------------------------------------------------------------
5.修改各 tomcat 实例中的 startup.sh 和 shutdown.sh 文件添加 tomcat 环境变量分别把启动文件指向tomcat1和tomcat2
vim /usr/local/tomcat/tomcat1/bin/startup.sh ##--G--在页尾添加以下内容
export CATALINA_BASE$CATALINA_BASE1
export CATALINA_HOME$CATALINA_HOME1
export TOMCAT_HOME$TOMCAT_HOME1vim /usr/local/tomcat/tomcat1/bin/shutdown.sh
##--G--在页尾添加以下内容
export CATALINA_BASE$CATALINA_BASE1
export CATALINA_HOME$CATALINA_HOME1
export TOMCAT_HOME$TOMCAT_HOME1vim /usr/local/tomcat/tomcat2/bin/startup.sh
##--G--在页尾添加以下内容
export CATALINA_BASE$CATALINA_BASE2
export CATALINA_HOME$CATALINA_HOME2
export TOMCAT_HOME$TOMCAT_HOME2vim /usr/local/tomcat/tomcat2/bin/shutdown.sh
##--G--在页尾添加以下内容
export CATALINA_BASE$CATALINA_BASE2
export CATALINA_HOME$CATALINA_HOME2
export TOMCAT_HOME$TOMCAT_HOME2
6.启动各 tomcat 中的 /bin/startup.sh
/usr/local/tomcat/tomcat1/bin/shutdown.sh
/usr/local/tomcat/tomcat2/bin/startup.sh /usr/local/tomcat/tomcat1/bin/shutdown.sh
/usr/local/tomcat/tomcat2/bin/startup.sh
7.浏览器访问测试
http://192.168.220.112:8080
http://192.168.220.112:8081 nginxtomcat实现动静分离
动静动态页面和静态页面
分离分别可以对静态页面和动态页面发起不同的请求会有不同的响应结果
nginx通过反向代理实现负载均衡——tomcat是后端服务器——web静态由nginx实现——静态请求会分配给nginx——动态页面则经有nginx转发分配给后端的tomcat
tomcat的并发能力比较弱只有nginx的1/6所以需要由负载均衡对请求进行合理的分配
NginxTomcat负载均衡的组合的优点
Nginx 静态处理优势Nginx 处理静态页面的效率远高于Tomcat的处理能力Nginx处理静态资源的能力是Tomcat 处理的6倍
动静分离原理服务端接收来自客户端的请求中既有静态资源也有动态资源静态资源由Nginx 提供服务动态资源由Nginx转发至后端。 NginxTomcat负载均衡
【安装 Nginx 服务】
Nginx服务装在另一台linux上不要和tomcat装在同一台机子上
systemctl stop firewalld
systemctl disable firewalld
setenforce 01、安装依赖包
yum -y install pcre-devel zlib-devel gcc gcc-c make2、创建运行用户
useradd -M -s /sbin/nologin nginx3、编译安装
cd /opt
tar zxvf nginx-1.22.0.tar.gz -C /opt/cd nginx-1.22.0/
./configure --with-stream
./configure \
--prefix/usr/local/nginx \
--usernginx \
--groupnginx \
--with-http_stub_status_modulemake -j 4 make install4、优化路径
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/5、添加 Nginx 系统服务
vim /lib/systemd/system/nginx.service
[Unit]
Descriptionnginx
Afternetwork.target
[Service]
Typeforking
PIDFile/usr/local/nginx/logs/nginx.pid
ExecStart/usr/local/nginx/sbin/nginx
ExecReload/bin/kill -s HUP $MAINPID
ExecStop/bin/kill -s QUIT $MAINPID
PrivateTmptrue
[Install]
WantedBymulti-user.targetchmod 777 /lib/systemd/system/nginx.service
systemctl start nginx.service
systemctl enable nginx.service——
cd /usr/local/nginx/conf/
#先备份nginx.conf文件
cp nginx.conf nginx.conf.20230811.bakvim nginx.conf
在--28行-- #tcp_nopush下插入
upstream ky30 {server 192.168.220.112:8080 weight1;server 192.168.220.112:8081 weight1;server 192.168.220.114:8080 weight2;
}然后到--47行--#access_log下插入
location ~ .*\.jsp$ {proxy_pass http://ky30;proxy_set_header HOST $host;#将真实的IP地址传给后端服务器proxy_set_header X-Real-IP $remote_addr;#记录代理服务器地址proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ .*\.(gif|jpg|png)$ {root html;index index.html index.htm;
}检查配置文件并重启
nginx -tsystemctl restart nginx.service
1号机
创建网页文件
Tomcat1的配置
mkdir /usr/local/tomcat1/webapps/test
vim /usr/local/tomcat1/webapps/test/index.jsp% page languagejava importjava.util.* pageEncodingUTF-8%
html
head
titleJSP test1 page/title
/head
body
% out.println(动态页面 1,http://www.test1.com);%
/body
/htmlTomcat2的配置
mkdir /usr/local/tomcat2/webapps/test
vim /usr/local/tomcat2/webapps/test/index.jsp
% page languagejava importjava.util.* pageEncodingUTF-8%
html
head
titleJSP test2 page/title
/head
body
% out.println(动态页面 2,http://www.test2.com);%
/body
/html
修改server.xml配置文件
cd /usr/local/tomcat1/conf/
改之前先备份一下
cp server.xml server.xml.20230811.bakvim server.xml#在原有的host标签下新添下面的内容
Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat1/webapps/test path reloadabletrue /
/Hostcd /usr/local/tomcat2/conf/
改之前先备份一下
cp server.xml server.xml.20230811.bakvim server.xml#在原有的host标签下新添下面的内容
Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat2/webapps/test path reloadabletrue /
/Host重启tomcat服务
/usr/local/tomcat1/bin/shutdown.sh
/usr/local/tomcat1/bin/startup.sh/usr/local/tomcat2/bin/shutdown.sh
/usr/local/tomcat2/bin/startup.sh打开另一台虚拟机安装好tomcat服务
访问一下1号机的tomcat看能否连得上——显示网页代码
curl 192.168.220.112:8080
curl 192.168.220.112:8081或者打开浏览器访问
192.168.220.112:8080
192.168.220.112:8081 mkdir /usr/local/tomcat/webapps/test
vim index.jspmkdir /usr/local/tomcat/webapps/testvim /usr/local/tomcat/webapps/test/index.jsp
% page languagejava importjava.util.* pageEncodingUTF-8%
html
head
titleJSP test3 page/title
/head
body
% out.println(动态页面 3,http://www.test3.com);%
/body
/html
修改配置文件
cd /usr/local/tomcat/conf/
cp server.xml server.xml.20230811.bak
vim server.xml在原有的host标签下添加
Host namelocalhost appBasewebapps unpackWARstrue autoDeploytrue xmlValidationfalse xmlNamespaceAwarefalseContext docBase/usr/local/tomcat/webapps/test path reloadabletrue /重启tomcat服务
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh回到装有Nginx服务的机子
cd /usr/local/nginx/html/
vim index.htmlhtml
head
titleNginx test page/title
/head
body
h1this is Nginx static test !/h2
img src1.jpg/
/body
/htmlsystemctl stop firewalld
setenforce 0将图片文件添加到/usr/local/nginx/html/目录下注意文件名要一致打开浏览器访问Nginx服务所在机子的IP地址
192.168.220.102加上/index.jsp访问刷新页面页面内容也随之刷新
192.168.220.102/index.jsp