中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

nginx+tomcat實現動靜分離+負載均衡

發布時間:2020-07-30 05:01:10 來源:網絡 閱讀:280 作者:qq5d47f509174fe 欄目:建站服務器

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" %>
<html>
  <head>
    <title>JSP test1 page</title>
  </head>
  <body>
    <% out.println("Welcome to test site, http://www.testl.com" );%>
  </body>
</html>

在配置文件中進行指定

[root@tomcat1 local]# cd /usr/local/tomcat/conf/
[root@tomcat1 conf]# vim server.xml
##149行插入
<Context docBase="/web/webapp1" path="" reloadable="false">
</Context>
//注解: 
//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
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宝坻区| 浦北县| 盈江县| 定西市| 大渡口区| 涡阳县| 顺义区| 东平县| 克什克腾旗| 云林县| 平顶山市| 平顺县| 正镶白旗| 临桂县| 内丘县| 辽宁省| 筠连县| 彰化县| 泰来县| 津南区| 喀喇| 巴里| 皋兰县| 章丘市| 乌审旗| 双江| 桓台县| 六安市| 泰兴市| 土默特左旗| 家居| 荔浦县| 庆阳市| 鄂州市| 内丘县| 白城市| 鹿泉市| 安徽省| 浏阳市| 马龙县| 囊谦县|