Tomcat的动静分离以及多实例部署

这篇具有很好参考价值的文章主要介绍了Tomcat的动静分离以及多实例部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、动静分离

Nginx实现负载均衡的原理:
Nginx实现负载均衡是通过反向代理实现Nginx服务器作为前端,Tomcat服务器作为后端,web页面请求由Nginx服务来进行转发。 但不是把所有的web请求转发,而是将静态页面请求Ncinx服务器自己来处理,动态页面请求,转发给后端的Tomcat服务器来处理。
Tomcat是属于轻量级的应用服务器,可接受访问量可能会不足,所以我们需要多台Tomcat服务器。并且Tomcat并发量处理能力弱(约Nginx的六分之一),所以需要Nginx方向代理时,进行合理的调用分配。
环境:

(1)代理服务器(Nginx):192.168.247。10

  • 作为前端,处理静态请求,响应静态页面
  • 将动态请求转发到后端,由后端Toncat处理
  • 动态请求的负载均衡

(2)Tomcat服务器: 192.168.247.60:8080  192.168.247.60:8081  192.168.247.70:8080 

  • 作为后端,处理动态请求 

1、代理服务器(Nginx)相关配置

1.1 配置负载均衡的服务器列表

	#配置负载均衡的服务器列表,weight参数表示权重,权重越高,被分配到的概率越大
	upstream tomcat_server {
		server 192.168.247.60:8080 weight=1;
		server 192.168.247.60:8081 weight=1;
        server 192.168.247.70:8080 weught=2;
	}

Tomcat的动静分离以及多实例部署,tomcat,java

 1.2 配置Nginx处理动态页面请求,和配置Nginx处理静态图片请求

#配置Nginx处理动态页面请求,将 .jsp文件请求转发到Tomcat 服务器处理
location ~ .*\.jsp$ {
			proxy_pass http://zz;
           #设置后端的Web服务器可以获取远程客户端的真实IP
           #设定后端的Web服务器接收到的请求访问的主机名(域名或IP、端口),默认HOST的值为proxy_pass指令设置的主机名。如果反向代理服务器不重写该请求头的话,那么后端真实服务器在处理时会认为所有的请求都来自反向代理服务器,如果后端有防攻击策略的话,机器就被封了。
			proxy_set_header HOST $host;
           #把$remote_addr赋值给X-Real-IP,来获取源IP
			proxy_set_header X-Real-IP $remote_addr;
           #在nginx 作为代理服务器时,设置的IP列表,会把经过的机器ip,代理机器ip都记录下来
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		}

  #配置Nginx处理静态图片请求
		location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|css)$ {
			root /usr/local/nginx/html;
			expires 10d;
		}

Tomcat的动静分离以及多实例部署,tomcat,java

 1.3 设置静态页面

vim /usr/local/nginx/html/index.html
<html>
<body>
<h1> this is Nginx static test !</h2>
<img src="1.jpg"/>
</body>
</html>

Tomcat的动静分离以及多实例部署,tomcat,java

 重启服务:

Tomcat的动静分离以及多实例部署,tomcat,java

2、Tomcat服务器(60:8080)

2.1 配置静态页面

mkdir -p /usr/local/tomcat/tomcat1/webapps/test

vim /usr/local/tomcat/tomcat1/webapps/test/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html>
<head>
<title>JSP test1 page</title>
</head>
<body>
<% out.println("动态页面 1,http://www.test1.com");%>
</body>
</html>

Tomcat的动静分离以及多实例部署,tomcat,java

 2.2 配置Tomcat主配置文件

vim /usr/local/tomcat/tomcat1/conf/server.xml  #把前面的host配置删除
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
	<Context docBase="/usr/local/tomcat/tomcat1/webapps/test" path="" reloadable="true" />
</Host>
	
/usr/local/tomcat/tomcat1/bin/shutdown.sh   
/usr/local/tomcat/tomcat1/bin/startup.sh 

Tomcat的动静分离以及多实例部署,tomcat,java

 重启:

Tomcat的动静分离以及多实例部署,tomcat,java

注: 另外2台Tomcat服务器 60:8081 70:8080  与60.8080配置方法相同!但是60.8080与60.8081是单台服务器上2台多实例Tomcat,所以配置主配置文件server.xml文件时注意文件路径!!!

3、验证: 

静态页面:192.168.247.10

动态页面:192.168.247.10/index.jsp

Tomcat的动静分离以及多实例部署,tomcat,java

 动态页面访问:

Tomcat的动静分离以及多实例部署,tomcat,javaTomcat的动静分离以及多实例部署,tomcat,java Tomcat的动静分离以及多实例部署,tomcat,java 

 二、多实例部署

Tomcat的动静分离以及多实例部署,tomcat,java

 1.配置 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

Tomcat的动静分离以及多实例部署,tomcat,java

2. 修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号

vim /usr/local/tomcat/tomcat2/conf/server.xml
<Server port="8006" shutdown="SHUTDOWN">		#22行,修改Server prot,默认为8005 -> 修改为8006
<Connector port="8081" protocol="HTTP/1.1"		#69行,修改Connector port,HTTP/1.1  默认为8080 -> 修改为8081
<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />	
#116行,修改Connector port AJP/1.3,默认为8009 -> 修改为8010

Tomcat的动静分离以及多实例部署,tomcat,javaTomcat的动静分离以及多实例部署,tomcat,java

Tomcat的动静分离以及多实例部署,tomcat,java

  • 第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。
  • 第二个连接器默认监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他HTTP服务器集成时,需要用到这个连接器。
  • 第三个连接器:port="8010":指定AJP连接器监听的端口号。在这个示例中,AJP连接器监听在8010端口上。
  • protocol="AJP/1.3":指定连接器所使用的协议。这里设置为AJP/1.3,表示使用AJP协议的版本1.3。
  • redirectPort="8443":指定重定向端口。当AJP连接器接收到HTTP请求时,如果请求是通过HTTPS(加密)访问的,则会将请求重定向到8443端口。

3. 修改各 tomcat 实例中的 startup.sh 和 shutdown.sh 文件,添加 tomcat 环境变量

vim /usr/local/tomcat/tomcat1/bin/startup.sh 
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
##添加以下内容
export CATALINA_BASE=$CATALINA_BASE1
export CATALINA_HOME=$CATALINA_HOME1
export TOMCAT_HOME=$TOMCAT_HOME1


vim /usr/local/tomcat/tomcat1/bin/shutdown.sh
# -----------------------------------------------------------------------------
# Stop script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE1
export CATALINA_HOME=$CATALINA_HOME1
export TOMCAT_HOME=$TOMCAT_HOME1


vim /usr/local/tomcat/tomcat2/bin/startup.sh 
# -----------------------------------------------------------------------------
# Start Script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2
export TOMCAT_HOME=$TOMCAT_HOME2


vim /usr/local/tomcat/tomcat2/bin/shutdown.sh
# -----------------------------------------------------------------------------
# Stop script for the CATALINA Server
# -----------------------------------------------------------------------------
export CATALINA_BASE=$CATALINA_BASE2
export CATALINA_HOME=$CATALINA_HOME2
export TOMCAT_HOME=$TOMCAT_HOME2

Tomcat的动静分离以及多实例部署,tomcat,java

 

 重启服务

/usr/local/tomcat/tomcat1/bin/startup.sh   #关闭
/usr/local/tomcat/tomcat2/bin/startup.sh   #开启

4.验证测试

浏览器访问测试
http://192.168.233.21:8080
http://192.168.233.21:8081

Tomcat的动静分离以及多实例部署,tomcat,javaTomcat的动静分离以及多实例部署,tomcat,java文章来源地址https://www.toymoban.com/news/detail-641979.html

到了这里,关于Tomcat的动静分离以及多实例部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Tomcat服务部署、优化及多实例实验(Nginx+Tomcat负载均衡、动静分离)

    目录 1 Tomcat 1.1 tomcat 构成 1.2 什么是 servlet? 1.3 什么是 JSP? 1.4 Tomcat 功能组件结构 1.5 Container 结构分析 1.6 Tomcat 请求过程 2 Tomcat 服务部署 2.1 环境部署 2.1.1 ​编辑 2.1.2 设置JDK环境变量 2.2 安装启动Tomcat 2.3 优化tomcat启动速度 2.4 主要目录说明 3 Tomcat 虚拟主机配置 3.1 创建 c

    2024年02月09日
    浏览(41)
  • 【Linux】Nginx+Tomcat负载均衡、动静分离、多实例部署

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 要求各 tomcat 实例配置不能有重复的端口号 第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。 第二个连接器默认监听8009端口,AJP端

    2024年02月09日
    浏览(65)
  • 简单认识nginx+Tomcat多实例部署实现动静分离和负载均衡

    1、在安装好jdk环境后,添加两例Tomcat服务 2.添加tomcat环境变量 3.修改 tomcat1 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号 (1) (2) (3) 4.修改两个 tomcat 实例中的 startup.sh 和 shutdown.sh 文件,添加 tomcat 环境变量 (1) (2) 5.启动两例 tomcat 运行各自的

    2024年02月12日
    浏览(34)
  • 【Tomcat】tomcat的多实例和动静分离

    在一台服务器上有多台Tomcat; 就算是多实例 安装telnet服务,可以用来测试端口通信是否正常 tomcat的日志文件 Tomcat多实例部署: 1.安装好 jdk 2.安装 tomcat 3.配置 tomcat 环境变量 4.修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号 ----------------------------

    2024年02月13日
    浏览(39)
  • tomcat多实例与动静分离

    1.配置 tomcat 环境变量 vim /etc/profile.d/tomcat.sh  source /etc/profile.d/tomcat.sh 2.修改 tomcat2 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号 vim /usr/local/tomcat/tomcat2/conf/server.xml 3.修改各 tomcat 实例中的 startup.sh 和 shutdown.sh 文件,添加 tomcat 环境变量  4.测试结果 1.在weba

    2024年02月13日
    浏览(35)
  • Tomcat多实例 + Tomcat负载均衡、动静分离(Nginx联动)

    Tomcat 多实例是指在同一台服务器上 运行多个独立的 Tomcat 实例 。 每个 Tomcat 实例都具有独立的配置文件、日志文件、应用程序和端口。 通过配置不同的端口和文件目录,可以实现同时运行多个独立的 Tomcat 服务器,每个服务器都可以独立处理用户的请求。 这样可以提高服务

    2024年02月09日
    浏览(40)
  • tomcat动静分离与多实例

    多实例:         需要提前安装jdk与tomcat。         第一个连接器默认监听8080端口,负责建立HTTP连接。在通过浏览器访问Tomcat服务器的Web应用时,使用的就是这个连接器。         第二个连接器默认监听8009端口,负责和其他的HTTP服务器建立连接。在把Tomcat与其他

    2024年02月13日
    浏览(32)
  • tomcat的多实例和动静分离

    目录 多实例 安装tomcat 配置 tomcat 环境变量 修改server.xml文件 修改开关文件,添加环境变量  tomcat1 tomcat2 启动 浏览器访问测试 nginx+tomcat实现动静分离 Nginx实现负载均衡的原理 部署nginx的负载器 搭建第三台tomcat 配置多实例服务器 Tomcat1配置 Tomcat2配置 配置nginx服务器负载均衡

    2024年02月13日
    浏览(37)
  • Tomcat多实例和负载均衡动静分离

    目录 一、Tomcat多实例部署 二、负载均衡动静分离 2.1.动静分离 2.11 nginx负载均衡 192.168.30.203 2.22 Tomcat服务器:192.168.30.200 2.23 Tomcat服务器:192.168.30.100 2.24 配置nginx 192.168.30.203静态页面 2.25 配置Tomcat 192.168.30.200 服务器动态页面 2.26 配置Tomcat 192.168.30.100服务器动态页面 2.27 Ngin

    2024年02月10日
    浏览(44)
  • tomcat的多实例,动静分离(web服务基础结束)

    多实例就是在一台服务器上有多个tomcat的服务(核心是改端口) 安装步骤 1.安装好 jdk 2.安装 tomcat cd /opt tar zxvf 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    保留权限强制复制,把tomcat1复制为to

    2024年02月13日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包