栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

部署Nginx和Tomcat动静分离

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

部署Nginx和Tomcat动静分离

目录

        一、概述

        1.1 简介

        1.2 原理

        1.3 Nginx处理优势

        二、部署ngnix负载均衡器

        2.1 实验环境

        2.2 部署Nginx服务

         三、部署Tomcat服务

        3.1 服务器1的配置        

         3.2 服务器2配置

         四、实现动静分离


        一、概述

        1.1 简介

        动态服务器的问题,往往就是并发能力太弱,往往需要多台动态服务器一起提供服务。如何把并发的压力分摊,这就需要调度,采用一定的调度策略,将请求分发给不同的服务器,这就是Load Balance负载均衡。

        当单机Tomcat,演化出多机多级部署的时候,一个问题便凸显出来,这就是Session。而这个问题的由来,都是由于HTTP协议在设计之初没有想到未来的发展。

        1.2 原理

        服务端接收来自客户端的请求中,既有静态资源也有动态资源,静态资源由Nginx提供服务,动态资源Nginx转发至后端。

        1.3 Nginx处理优势

        Nginx处理静态页面的效率远高于Tomcat的处理能力若Tomcat的请求量为1000次,则Nginx的请求量为6000次Tomcat每秒的吞吐量为0.6M,Nginx的每秒吞吐量为3.6MNginx处理静态资源的能力是Tomcat处理的6倍

        二、部署ngnix负载均衡器

        2.1 实验环境

        三台服务器:

        以Nginx作为负载均衡器,Tomcat作为应用服务器

        nginx:192.168.162.100

        tomcat1:192.168.162.111

        tomcat2:192.168.162.101

        2.2 部署Nginx服务

        将文件包上传文件夹中并解开包

[root@lppdff opt]# tar zxf nginx-1.12.0.tar(1).gz   ##解开包
[root@lppdff opt]# cd nginx-1.12.0/
[root@lppdff nginx-1.12.0]# ls
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  man  README  src
[root@lppdff nginx-1.12.0]# 

        安装依赖关系包

         新建用户便于管理

[root@lppdff nginx-1.12.0]#useradd -M -s /sbin/nologin nginx

        编译安装

[root@lppdff nginx-1.12.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module --with-file-aio --with-http_gzip_static_module --with-http_flv_module

[root@lppdff nginx-1.12.0]# make && make install

        使用软连接,将其放入全局文件中便于使用

[root@lppdff nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

##新建配置文件,并添加记录
[root@lppdff nginx-1.12.0]# vim /lib/systemd/system/nginx.service

[Unit]
Description=nginx                     ####描述
After=network.target                 ####描述服务类别
[Service]
Type=forking                                             ###后台运行形式
PIDFile=/usr/local/nginx/logs/nginx.pid                   ###PID文件位置
ExecStart=/usr/local/nginx/sbin/nginx                     ###启动服务
ExecReload=/usr/bin/kill -s HUP $MAINPID             ###根据PID重载配置
ExecStop=/usr/bin/kill -s QUIT $MAINPID                ###根据PID终止进程
PrivateTmp=true
[Install]
WantedBy=multi-user.target


##修改文件权限
[root@lppdff nginx-1.12.0]# chmod 754 /lib/systemd/system/nginx.service

        启动服务

[root@lppdff nginx-1.12.0]# systemctl daemon-reload  ##重新加载服务
[root@lppdff nginx-1.12.0]# systemctl start nginx.service    ## 开启服务

        网页验证

         三、部署Tomcat服务

        3.1 服务器1的配置        

        将安装包放入并安装

[root@localhost opt]# ls
apache-tomcat-9.0.16.tar.gz  jdk-8u201-linux-x64.rpm
[root@localhost opt]# rpm -ivh jdk-8u201-linux-x64.rpm  ##安装编译包
警告:jdk-8u201-linux-x64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID ec551f03: NOKEY
准备中...                          ################################# [100%]
	软件包 jdk1.8-2000:1.8.0_201-fcs.x86_64 已经安装
[root@localhost opt]# 

        添加变量

##编辑文件,添加环境变量
[root@localhost local]#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

        解压tomcat安装包

##解压tomcat安装包
[root@localhost opt]# tar zxf apache-tomcat-9.0.16.tar.gz
##移动
[root@localhost opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat
[root@localhost opt]# ls
apache-tomcat-9.0.16.tar.gz  jdk-8u201-linux-x64.rpm  rh

         移动文件位置并添加站点

[root@localhost opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat

[root@localhost opt]# cd /usr/local/tomcat/


##删除默认站点记录并添加记录
[root@localhost tomcat]# vim conf/server.xml
##删除148行至164行host元素


                
      

         启动服务

[root@localhost tomcat]# /usr/local/tomcat/bin/startup.sh  ##启动脚本

[root@localhost tomcat]# ss -ntap |grep 8080  ##过滤出服务
LISTEN     0      100         :::8080                    :::*                   users:(("java",pid=39314,fd=54))
[root@localhost tomcat]# 

         3.2 服务器2配置

        将安装包上传服务器,并解压安装

         添加变量

##编辑文件,添加环境变量
[root@localhost local]#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

        解压 Tomcat

##解压tomcat安装包
[root@localhost opt]# tar zxf apache-tomcat-9.0.16.tar.gz
##移动
[root@localhost opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat
[root@localhost opt]# ls
apache-tomcat-9.0.16.tar.gz  jdk-8u201-linux-x64.rpm  rh

        移动文件位置并添加站点

[root@localhost opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat

[root@localhost opt]# cd /usr/local/tomcat/


##删除默认站点记录并添加记录
[root@localhost tomcat]# vim conf/server.xml
##删除148行至164行host元素


                
      

                启动服务

[root@localhost tomcat]# /usr/local/tomcat/bin/startup.sh  ##启动脚本

[root@localhost tomcat]# ss -ntap |grep 8080  ##过滤出服务
LISTEN     0      100         :::8080                    :::*                   users:(("java",pid=39314,fd=54))
[root@localhost tomcat]# 

        网页验证

         四、实现动静分离

          切换回nginx服务器

##切换位置
[root@lppdff nginx-1.12.0]# cd html/
##新建目录
[root@lppdff html]# mkdir test
[root@lppdff html]# cd test/
##新建测试网页文件
[root@lppdff test]# vim test.html
[root@lppdff test]# 

        放入图片,验证

[root@lppdff test]# ls
2.jpg  test.html
[root@lppdff test]# 

        编辑配置文件

[root@lppdff nginx]# vim conf/nginx.conf
##在server上添加记录
    pstream tomcat_server {
                    server 192.168.162.111:8080 weight=1;
                    server 192.168.162.101:8080 weight=1;
      }

location ~ .*.jsp$ {
        	proxy_pass http://tomcat_server;
			proxy_set_header HOST $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location ~* .*.(gif|jpg|jpeg|png|bmp|html)$ {
        root     /usr/local/nginx/html/test;  
        }

         验证

 

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/512935.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号