真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

下文給大家?guī)鞱ginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹,希望能夠給大家在實際運用中帶來一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書籍,今天我們就用創(chuàng)新互聯(lián)在行業(yè)內(nèi)累計的經(jīng)驗來做一個解答。

我們提供的服務(wù)有:網(wǎng)站制作、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、響水ssl等。為1000多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的響水網(wǎng)站制作公司

 Nginx應(yīng)用

Nginx是一款非常優(yōu)秀的HTTP云服務(wù)器軟件
  • 支持高達(dá)50000個并發(fā)連接數(shù)的響應(yīng)
  • 擁有強大的靜態(tài)資源處理能力
  • 運行穩(wěn)定
  • 內(nèi)存、CPU等系統(tǒng)資源消耗非常低

目前很多大型網(wǎng)站都應(yīng)用Nginx服務(wù)器作為后端網(wǎng)站程序的反向代理及負(fù)載均衡器,提升整個站點的負(fù)載并發(fā)能力

Nginx負(fù)載均衡實現(xiàn)原理

Nginx配置反向代理的主要參數(shù)

upstream 服務(wù)池名{}

配置后端服務(wù)器池,以提供響應(yīng)數(shù)據(jù)

proxy_ _pass http://服務(wù)池名

配置將訪問請求轉(zhuǎn)發(fā)給后端服務(wù)器池的服務(wù)器處理

Nginx靜態(tài)處理優(yōu)勢

  • Nginx處理靜態(tài)頁面的效率遠(yuǎn)高于Tomcat的處理能力
  • 如果Tomcat的請求量為1000次,則Nginx的請求量為6000次
  • Tomcat每秒的吞吐量為0.6M,Nginx的每秒吞吐量為3.6M
  • Nginx處理靜態(tài)資源的能力是Tomcat處理的6倍,優(yōu)勢可見一斑

動靜分離原理

服務(wù)端接收來自客戶端的請求中,既有靜態(tài)資源也有動態(tài)資源

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

實驗環(huán)境:

Nginx服務(wù)器:192.168.52.135
Tomcat服務(wù)器1:192.168.52.134
Tomcat服務(wù)器2:192.168.52.150
1、將實驗所需工具包從宿主機共享出去

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

負(fù)載均衡配置:

一、搭建Tomcat服務(wù)器1

1、安裝jdk
[root@tomcat1 ~]# mkdir /mnt/tools   //創(chuàng)建掛載目錄
[root@tomcat1 ~]# mount.cifs //192.168.100.100/tools /mnt/tools/   //掛載共享工具包
Password for root@//192.168.100.100/tools:  
[root@tomcat1 ~]# cd /mnt/tools/tomcat/   //切換到掛載目錄
[root@tomcat1 tomcat]# ls
12D18CFCD6599AFF0445766ACC4CA231C5025773.torrent  apache-jmeter-5.1.zip        jdk-8u201-linux-x64.rpm
apache-jmeter-5.1                                 apache-tomcat-9.0.16.tar.gz  tomcat優(yōu)化壓測.jmx
[root@tomcat1 tomcat]#
[root@tomcat1 tomcat]# rpm -ivh jdk-8u201-linux-x64.rpm   //直接安裝rpm包
2、配置環(huán)境變量
[root@tomcat1 tomcat]# cd /usr/java/jdk1.8.0_201-amd64/   //切換目錄
[root@tomcat1 jdk1.8.0_201-amd64]# vim /etc/profile   //修改系統(tǒng)環(huán)境變量文件
##文件末尾添加環(huán)境變量
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@tomcat1 jdk1.8.0_201-amd64]# source /etc/profile   //重新加載配置文件
[root@tomcat1 jdk1.8.0_201-amd64]# java -version   //查看版本
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
[root@tomcat1 jdk1.8.0_201-amd64]# 
3、配置Tomcat
[root@tomcat1 jdk1.8.0_201-amd64]# cd /mnt/tools/tomcat/   //切換到掛載目錄
[root@tomcat1 tomcat]# tar zxf apache-tomcat-9.0.16.tar.gz -C /opt/   //解壓到“/opt/”目錄
[root@tomcat1 tomcat]# mv /opt/apache-tomcat-9.0.16/ /usr/local/tomcat9   //移動到“/usr/local/”目錄并重命名
[root@tomcat1 bin]# ln -s /usr/local/tomcat9/bin/startup.sh /usr/bin/   //建立啟動腳本軟鏈接
[root@tomcat1 bin]# ln -s /usr/local/tomcat9/bin/shutdown.sh /usr/bin/   //建立關(guān)閉腳本軟鏈接
[root@tomcat1 bin]#
[root@tomcat1 bin]# startup.sh    //開啟Tomcat服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.
[root@tomcat1 bin]#
[root@tomcat1 bin]# netstat -ntap | grep 8080   //查看端口
tcp6       0      0 :::8080                 :::*                    LISTEN      19488/java          
[root@tomcat1 bin]# 
[root@tomcat1 bin]# systemctl stop firewalld.service    //關(guān)閉防火墻
[root@tomcat1 bin]# setenforce 0   //關(guān)閉增強性安全功能
[root@tomcat1 bin]#
4、測試訪問

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

5、添加站點和首頁文件
[root@tomcat1 bin]# mkdir -pv /web/webapp1   //創(chuàng)建站點目錄
mkdir: 已創(chuàng)建目錄 "/web"
mkdir: 已創(chuàng)建目錄 "/web/webapp1"
[root@tomcat1 bin]# vim /web/webapp1/index.jsp   //添加首頁文件
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

 
  JSP test1 page
 
 
  <% out.println("Welcome to test site,http://www.test1.com");%>
 
6、修改Tomcat配置文件
[root@tomcat1 bin]# cd ../conf/   //切換目錄
[root@tomcat1 conf]# vim server.xml   //修改配置文件
    
                        ##在Host標(biāo)簽里,添加下面內(nèi)容
        
        
[root@tomcat1 conf]# shutdown.sh    //關(guān)閉服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
[root@tomcat1 conf]# startup.sh    //開啟服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.
[root@tomcat1 conf]# 
7、測試訪問網(wǎng)站

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

二、搭建Tomcat服務(wù)器2

1、安裝jdk
[root@tomcat2 ~]# mkdir /mnt/tools   //創(chuàng)建掛載目錄
[root@tomcat2 ~]# mount.cifs //192.168.100.100/tools /mnt/tools/   //掛載共享工具包
Password for root@//192.168.100.100/tools:  
[root@tomcat2 ~]# cd /mnt/tools/tomcat/   //切換到掛載目錄
[root@tomcat2 tomcat]# rpm -ivh jdk-8u201-linux-x64.rpm   //直接安裝rpm包
2、配置環(huán)境變量
[root@tomcat2 tomcat]# cd /usr/java/jdk1.8.0_201-amd64/   //切換目錄
[root@tomcat2 jdk1.8.0_201-amd64]# vim /etc/profile   //修改系統(tǒng)環(huán)境變量文件
##文件末尾添加環(huán)境變量
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@tomcat2 jdk1.8.0_201-amd64]# source /etc/profile   //重新加載配置文件
[root@tomcat2 jdk1.8.0_201-amd64]# java -version   //查看版本

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
[root@tomcat2 jdk1.8.0_201-amd64]#
3、配置Tomcat
[root@tomcat2 jdk1.8.0_201-amd64]# cd /mnt/tools/tomcat/   //切換到掛載目錄
[root@tomcat2 tomcat]# tar zxf apache-tomcat-9.0.16.tar.gz -C /opt/    //解壓到“/opt/”目錄
[root@tomcat2 tomcat]# mv /opt/apache-tomcat-9.0.16/ /usr/local/tomcat9   //移動到“/usr/local/”目錄并重命名
[root@tomcat2 tomcat]# ln -s /usr/local/tomcat9/bin/startup.sh /usr/bin/   //建立啟動腳本軟鏈接
[root@tomcat2 tomcat]# ln -s /usr/local/tomcat9/bin/shutdown.sh /usr/bin/   //建立關(guān)閉腳本軟鏈接
[root@tomcat2 tomcat]# startup.sh    //開啟服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.
[root@tomcat2 tomcat]# netstat -ntap | grep 8080   //查看端口
tcp6       0      0 :::8080                 :::*                    LISTEN      52941/java          
[root@tomcat2 tomcat]#
[root@tomcat2 tomcat]# systemctl stop firewalld.service    //關(guān)閉防火墻
[root@tomcat2 tomcat]# setenforce 0   //關(guān)閉增強性安全功能
[root@tomcat2 tomcat]# 
4、檢測訪問

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

5、添加站點和首頁文件
[root@tomcat2 tomcat]# mkdir -pv /web/webapp1   //創(chuàng)建站點目錄
mkdir: 已創(chuàng)建目錄 "/web"
mkdir: 已創(chuàng)建目錄 "/web/webapp1"
[root@tomcat2 tomcat]# vim /web/webapp1/index.jsp   //添加首頁文件
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

 
  JSP test1 page
 
 
  <% out.println("Welcome to test site,http://www.test2.com");%>
 
6、修改Tomcat配置文件
[root@tomcat2 tomcat]# cd /usr/local/tomcat9/conf/   //切換目錄
[root@tomcat2 conf]# vim server.xml    //修改配置文件
    
                        ##在Host標(biāo)簽里,添加下面內(nèi)容                       
        
        
[root@tomcat2 conf]# shutdown.sh     //關(guān)閉服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
[root@tomcat2 conf]# startup.sh    //開啟服務(wù)
Using CATALINA_BASE:   /usr/local/tomcat9
Using CATALINA_HOME:   /usr/local/tomcat9
Using CATALINA_TMPDIR: /usr/local/tomcat9/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_201-amd64
Using CLASSPATH:       /usr/local/tomcat9/bin/bootstrap.jar:/usr/local/tomcat9/bin/tomcat-juli.jar
Tomcat started.
[root@tomcat2 conf]# 
7、檢測訪問站點

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

三、搭建Nginx服務(wù)器

1、安裝環(huán)境包
[root@nginx ~]# yum -y install pcre-devel zlib-devel openssl-devel gcc gcc-c++
............//省略過程
[root@nginx ~]#
2、解壓Nginx源碼包
[root@nginx ~]# mkdir /mnt/tools   //創(chuàng)建掛載目錄
[root@nginx ~]# mount.cifs //192.168.100.100/tools /mnt/tools/   //掛載共享目錄
Password for root@//192.168.100.100/tools:  
[root@nginx ~]# cd /mnt/tools/LNMP/   //切換到掛載目錄
[root@nginx LNMP]# ls
Discuz_X3.4_SC_UTF8.zip    nginx-1.12.2.tar.gz  php-7.1.20.tar.gz
MySQL-boost-5.7.20.tar.gz  php-7.1.10.tar.bz2
[root@nginx LNMP]# tar zxf nginx-1.12.2.tar.gz -C /opt/    //解壓源碼包
[root@nginx LNMP]# cd /opt/   
[root@nginx opt]# ls
nginx-1.12.2  rh
[root@nginx opt]# 
3、編譯安裝Nginx服務(wù)
[root@nginx opt]# cd nginx-1.12.2/   //切換目錄
[root@nginx nginx-1.12.2]# useradd -M -s /sbin/nologin nginx   //創(chuàng)建用戶nginx
[root@nginx nginx-1.12.2]# ./configure \   //配置nginx服務(wù)
> --prefix=/usr/local/nginx \   //安裝路徑
> --user=nginx \   //屬主
> --group=nginx \   //屬組
> --with-file-aio \   //啟用file aio支持(一種APL文件傳輸格式)
> --with-http_stub_status_module \   //獲取nginx自上次啟動以來的工作狀態(tài)
> --with-http_gzip_static_module \   //在線實時壓縮輸出數(shù)據(jù)流
> --with-http_flv_module \   //為Flash Video(FLV)文件 提供服務(wù)端偽流媒體支持
> --with-http_ssl_module    //為HTTPS提供了必要的支持
[root@nginx nginx-1.12.2]# make && make install
4、Nginx服務(wù)管理優(yōu)化
[root@nginx nginx-1.12.2]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/   //為nginx命令建立軟鏈接,方便系統(tǒng)識別
[root@nginx nginx-1.12.2]# 
[root@nginx nginx-1.12.2]# vim /etc/init.d/nginx   //添加管理腳本
#!/bin/bash
# chkconfig: - 99 20
# description: Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" in
  start)
    $PROG
    ;;
  stop)
    kill -s QUIT $(cat $PIDF)
    ;;
  restart)
    $0 stop
    $0 start
    ;;
  reload)
    kill -s HUP $(cat $PIDF)
    ;;
  *)
        echo "Usage: $0 {start|stop|restart|reload}"
        exit 1
esac
exit 0
[root@nginx nginx-1.12.2]# chmod +x /etc/init.d/nginx   //給腳本添加執(zhí)行權(quán)限
[root@nginx nginx-1.12.2]# chkconfig --add nginx   //添加讓service工具能夠識別
[root@nginx nginx-1.12.2]#
[root@nginx nginx-1.12.2]# service nginx start    //開啟服務(wù)
[root@nginx nginx-1.12.2]# service nginx stop    //關(guān)閉服務(wù)
[root@nginx nginx-1.12.2]#
5、修改Nginx服務(wù)配置文件
[root@nginx nginx-1.12.2]# cd /usr/local/nginx/conf/   //切換目錄
[root@nginx conf]# ls
fastcgi.conf          fastcgi_params.default  mime.types          nginx.conf.default   uwsgi_params
fastcgi.conf.default  koi-utf                 mime.types.default  scgi_params          uwsgi_params.default
fastcgi_params        koi-win                 nginx.conf          scgi_params.default  win-utf
[root@nginx conf]# vim nginx.conf   //修改配置文件

    upstream tomcat-server {   ##添加tomcat服務(wù)器
                server 192.168.52.134:8080 weight=1;
                server 192.168.52.150:8080 weight=1;
        }

        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass http://tomcat-server;   ##添加代理
        }

[root@nginx conf]# nginx -t   //檢查配置文件格式
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@nginx conf]# 
[root@nginx conf]# service nginx start    //開啟服務(wù)
[root@nginx conf]# netstat -ntap | grep nginx   //查看端口
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      41747/nginx: master 
[root@nginx conf]# systemctl stop firewalld.service    關(guān)閉防火墻
[root@nginx conf]# setenforce 0   //關(guān)閉增強性安全功能
[root@nginx conf]# 

四、檢測負(fù)載均衡服務(wù)

1、訪問Nginx代理服務(wù)器IP地址

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

2、刷新頁面,測試是否負(fù)載均衡

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹
(生產(chǎn)環(huán)境下,兩個頁面需要相同,這是為了方便演示故意設(shè)置不同)

動靜分離配置

一、Nginx服務(wù)器配置

1、修改Nginx服務(wù)配置文件
[root@nginx conf]# vim nginx.conf   //修改配置文件
##不用修改
          upstream tomcat-server {
                server 192.168.52.134:8080 weight=1;
                server 192.168.52.150:8080 weight=1;
        }

        location / {
            root   html;
            index  index.html index.htm;
           # proxy_pass http://tomcat-server;   ##注釋
        }
##添加以下內(nèi)容
        location ~.*.jsp$ {
            proxy_pass http://tomcat-server;
            proxy_set_header Host $host;
        }

        location ~.*.\.(gif|jpg|jpeg|png|bmp|swf|css)$ {
            root html;
            expires 30d;
        }
2、修改Nginx服務(wù)首頁文件
[root@nginx conf]# vim ../html/index.html



   //支持中文字符集
靜態(tài)頁面



靜態(tài)頁面

這是靜態(tài)頁面

[root@nginx conf]# service nginx stop [root@nginx conf]# service nginx start [root@nginx conf]#
3、測試首頁

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

二、Tomcat服務(wù)器1配置

創(chuàng)建一個新的首頁文件
[root@tomcat1 ~]# cd /usr/local/tomcat9/webapps/   //切換目錄
[root@tomcat1 webapps]# ls
docs  examples  host-manager  manager  ROOT
[root@tomcat1 webapps]# mkdir test   //創(chuàng)建站點目錄
[root@tomcat1 webapps]# cd test/
[root@tomcat1 test]# vim index.jsp   //添加首頁文件

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>




動態(tài)頁面1


動態(tài)頁面1

三、Tomcat服務(wù)器2配置

創(chuàng)建一個新的首頁文件
[root@tomcat2 ~]# cd /usr/local/tomcat9/webapps/   //切換目錄
[root@tomcat2 webapps]# ls
docs  examples  host-manager  manager  ROOT
[root@tomcat2 webapps]# mkdir test   //創(chuàng)建站點目錄
[root@tomcat2 webapps]# cd test/
[root@tomcat2 test]# vim /index.jsp   //添加首頁文件

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.Date" %>
<%@ page import="java.text.SimpleDateFormat" %>




動態(tài)頁面2


動態(tài)頁面2

四、測試能否動靜分離

1、通過Nginx服務(wù)器IP地址訪問動態(tài)文件

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

2、刷新頁面,測試負(fù)載均衡

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

五、讓Tomcat服務(wù)器調(diào)用Nginx服務(wù)器站點的圖片

1、分別在兩臺Tomcat服務(wù)器的首頁文件,添加圖片
[root@tomcat1 test]# vim index.jsp 
動態(tài)頁面1

  //只需修改此行 [root@tomcat2 test]# vim index.jsp
動態(tài)頁面2

  //只需修改此行
2、將圖片添加到Nginx服務(wù)器指定站點
[root@nginx conf]# cd /mnt/tools/   //切換到掛載點
[root@nginx tools]# mkdir -p /usr/local/nginx/html/test   //創(chuàng)建站點目錄test,注意必須與Tomcat站點相同
[root@nginx tools]# cp picture.jpg /usr/local/nginx/html/test/   //復(fù)制圖片到站點
[root@nginx tools]# 
3、測試訪問

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

4、再次刷新,測試負(fù)載均衡

Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹

看了以上關(guān)于Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹,如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗了。創(chuàng)新互聯(lián)官網(wǎng)鏈接www.cdcxhl.com

 


網(wǎng)站標(biāo)題:Nginx負(fù)載均衡的實現(xiàn)原理和動靜分離的分析介紹
瀏覽路徑:http://weahome.cn/article/gioocp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部