关于nginx+tomcat动静分离+负载均衡实现步骤及配置流程
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,下文给大家带来nginx+tomcat动静分离+负载均衡实现步骤及配置流程,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经
千家信息网最后更新 2025年01月23日关于nginx+tomcat动静分离+负载均衡实现步骤及配置流程
下文给大家带来nginx+tomcat动静分离+负载均衡实现步骤及配置流程,希望能够给大家在实际运用中带来一定的帮助,负载均衡涉及的东西比较多,理论也不多,网上有很多书籍,今天我们就用在行业内累计的经验来做一个解答。
一、关于动静分离和负载均衡的介绍
Nginx+Tomcat的动静分离:
所谓的动静分离就是通过nginx(或apache等)来处理用户端请求的图片、html等静态的文件,tomcat(或weblogic)处理jsp、do等动态文件,从而达到动静页面访问时通过不同的容器来处理。nginx处理静态页面效率远高于tomcat,而tomcat擅长动态页面处理,这样一来就能更好的提高并发,处理性能。
Nginx+Tomcat的负载均衡:
在云服务器集群中,Nginx起到一个代理服务器的角色(即反向代理),为了避免单独一个服务器压力过大,将来自用户的请求转发给不同的服务器,tomcat负责处理nginx转发的用户请求
二、具体步骤
1、环境介绍
名称 | 角色 | 地址 |
---|---|---|
centos7-1 | nginx | 192.168.142.153 |
centos7-2 | Tomcat | 192.168.142.154 |
centos7-3 | Tomcat | 192.168.142.132 |
win7 | 客户端 | 不重要(同一网段即可) |
目的:
当访问服务器时,静态页面由nginx服务器处理,动态页面由tomcat处理
2、Tomcat配置(两台Tomcat端配置相同)
安装jdk环境包
[root@localhost tomcat]# rpm -ivh jdk-8u201-linux-x64.rpm[root@localhost tomcat]# cd /usr/java/jdk1.8.0_201-amd64/
修改全局配置文件
[root@localhost jdk1.8.0_201-amd64]# vim /etc/profile//末行添加 export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64 export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar export PATH=$JAVA_HOME/bin:$PATH[root@localhost jdk1.8.0_201-amd64]# source /etc/profile[root@localhost jdk1.8.0_201-amd64]# cd /mnt/tomcat/
安装Tomcat软件本体
[root@localhost tomcat]# tar zxvf apache-tomcat-9.0.16.tar.gz -C /usr/local/[root@localhost tomcat]# cd /usr/local/[root@localhost local]# mv apache-tomcat-9.0.16/ tomcat
建立启动/停止软链接
[root@localhost local]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/[root@localhost local]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin///启服务,关防火墙[root@localhost local]# startup.sh [root@localhost local]# systemctl stop firewalld.service [root@localhost local]# setenforce 0
创建Tomcat首页
[root@tomcat1 local]# mkdir -p /web/webapp1 #建立站点[root@tomcat1 local]# vim /web/webapp1/index.jsp #新建Tomcat首页<%@ page language= "java" import="java.util.*" pageEncoding="UTF-8" %> JSP test1 page <% out.println("Welcome to test site, http://www.testl.com" );%>
在配置文件中进行指定
[root@tomcat1 local]# cd /usr/local/tomcat/conf/[root@tomcat1 conf]# vim server.xml##149行插入 //注解: //docBase: web应用的文档基准目录//reloadable设置监视"类"是否变化//path=""设置默认""类//重启服务[root@tomcat1 conf]# shutdown.sh[root@tomcat1 conf]# startup.sh
3、Nginx配置
安装环境包
[root@nginx ~]# yum -y install gcc gcc-c++ zlib-devel expat-devel pcre-devel pcre openssl-devel
安装nginx软件本体
[root@nginx mnt]# cd /opt/nginx-1.12.0/[root@nginx nginx-1.12.0]# useradd -M -s /sbin/nologin nginx[root@nginx nginx-1.12.0]# ./configure \--prefix=/usr/local/nginx \--user=nginx --group=nginx \--with-file-aio \--with-http_stub_status_module \--with-http_gzip_static_module \--with-http_flv_module \--with-http_ssl_module[root@nginx nginx-1.12.0]# make && make install
进行到这步时,nginx会有三种不同方向与Tomcat进行结合,这里我也会一一进行讲解
(1)nginx仅进行负载均衡,不提供网页服务
[root@nginx nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf//gzip后添加upstream tomcat-server { //地址池名称 server 192.168.142.154:8080 weight=1; //指向Tomcat地址,采用轮询,权重相同 server 192.168.142.132:8080 weight=1;}//location /段后添加proxy_pass http://tomcat-server; //代理指向Tomcat地址池(之前指定的)
(2)nginx仅进行动静分离时
[root@nginx nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf//server段后添加location ~ (. *). jsp$ { proxy_pass http://192.168.142.132:8080; //在nginx遇到以jsp结尾的网页时将自动代理至Tomcat服务器 proxy_set_header Host $host;}
(3)nginx同时进行负载均衡与反向代理
[root@nginx nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf//gzip后添加upstream tomcat-server { //地址池名称 server 192.168.142.154:8080 weight=1; //指向Tomcat地址,采用轮询,权重相同 server 192.168.142.132:8080 weight=1;}//server段后添加location ~ (. *). jsp$ { proxy_pass http://tomcat-server; proxy_set_header Host $host;}
开启服务
[root@nginx nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/[root@nginx nginx-1.12.0]# nginx [root@nginx nginx-1.12.0]# systemctl stop firewalld.service
[root@nginx nginx-1.12.0]# setenforce 0
看了以上关于nginx+tomcat动静分离+负载均衡实现步骤及配置流程,如果大家还有什么地方需要了解的可以在行业资讯里查找自己感兴趣的或者找我们的专业技术工程师解答的,技术工程师在行业内拥有十几年的经验了。
服务
处理
均衡
动静
配置
服务器
地址
页面
代理
文件
步骤
不同
相同
动态
名称
指向
环境
用户
静态
流程
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
itc服务器显示DVR
苹果连接打印机服务器
计算机网络技术相关柱状图
广州混合现实软件开发
完成网络安全的设计与实施
农村学校网络安全管理制度
数据库lsp
基于对象的无模式数据库
计算机网络技术学校那些
数据库作业转换成sql语句
软件开发微笑曲线
邢台有软件开发培训学校
数据库面向对象技术
如何清空一张数据库表
给wifi换服务器会有什么影响
国家网络安全 杂谈
创造中心服务器
vue 脚手架后台服务器
实用数据库技术相关书籍
gp数据库 查询所有表
软件开发需求前期沟通流程
网络技术论文答辩讲稿
app软件开发 长沙
新乡手机软件开发程序员
关系模型中的数据库
南方医科大学高考数据库
宁乡学习软件开发培训
张店应用软件开发
广西省中小学生网络安全教育
移动网络访问电信服务器断线