欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx+Tomcat負(fù)載均衡集群安裝配置案例詳解

 更新時(shí)間:2021年10月20日 09:56:14   作者:Zlwriii  
Nginx是一款非常優(yōu)秀的http服務(wù)器軟件,它能夠支持高達(dá)50000個(gè)并發(fā)連接數(shù)的相應(yīng),Nginx+Tomcat負(fù)載均衡集案列是應(yīng)用于生產(chǎn)環(huán)境的一套可靠的Web站點(diǎn)解決方案,對(duì)Nginx Tomcat負(fù)載均衡集群相關(guān)知識(shí)感興趣的朋友一起看看吧

前言

介紹Tomcat及Nginx+Tomcat負(fù)載均衡集群,Tomcat的應(yīng)用場(chǎng)景,然后重點(diǎn)介紹Tomcat的安裝配置。Nginx+Tomcat負(fù)載均衡集案列是應(yīng)用于生產(chǎn)環(huán)境的一套可靠的Web站點(diǎn)解決方案。

一、Nginx+Tomcat

通常情況下,一個(gè)Tomcat站點(diǎn)由于可能出現(xiàn)單點(diǎn)故障及無法應(yīng)付過多客戶復(fù)雜多樣的請(qǐng)求等問題,不能單獨(dú)應(yīng)用于生產(chǎn)環(huán)境下,所以我們需要一套更可靠的解決方案來完善Web站點(diǎn)架構(gòu)。

Nginx是一款非常優(yōu)秀的http服務(wù)器軟件,它能夠支持高達(dá)50000個(gè)并發(fā)連接數(shù)的相應(yīng),擁有強(qiáng)大的靜態(tài)資源的處理能力,運(yùn)行穩(wěn)定,并且內(nèi)存、CPU等系統(tǒng)資源消耗非常低。目前很多大型網(wǎng)站都應(yīng)用Nginx服務(wù)器為后端網(wǎng)站程序的反向代理及負(fù)載均衡器,來提升整個(gè)站點(diǎn)的負(fù)載并發(fā)能力。

部署環(huán)境

主機(jī) 操作系統(tǒng) IP地址 主要軟件

Nginx服務(wù)器

CentOS 7.4 x86_64

192.168.196.146

nginx-1.12.2.tar.gz

Tomcat服務(wù)器1

CentOS 7.4 x86_64

192.168.196.147

①apache-tomcat-9.0.16.tar.gz / ②jdk-8u201-linux-x64.rpm

Tomcat服務(wù)器2

CentOS 7.4 x86_64

192.168.196.153

①apache-tomcat-9.0.16.tar.gz / ② jdk-8u201-linux-x64.rpm

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

1.關(guān)閉防火墻相關(guān)服務(wù)

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0
 
[root@localhost ~]# vim /etc/resolv.conf
nameserver 114.114.114.114

2.安裝依賴包

[root@localhost ~]# yum install -y gcc gcc-c++ pcre-devel zlib-devel make

3.編譯安裝Nginx

[root@localhost ~]# tar zxvf nginx-1.12.2.tar.gz -C /opt/
 
[root@localhost ~]# cd /opt/nginx-1.12.2/
[root@localhost nginx-1.12.2]# ./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-http_stub_status_module
 
[root@localhost nginx-1.12.2]# make && make install
 
[root@localhost nginx-1.12.2]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
[root@localhost ~]# useradd -M -s /sbin/nologin nginx

4.添加Nginx系統(tǒng)服務(wù)

[root@localhost ~]# vim /lib/systemd/system/nginx.service
 
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecrReload=/bin/kill -s HUP $MAINPID
ExecrStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
 
[root@localhost ~]# chmod 754 /lib/systemd/system/nginx.service	 #賦權(quán),除了root以外的用戶都不能修改
[root@localhost ~]# systemctl start nginx.service
[root@localhost ~]# systemctl enable nginx.service

5.網(wǎng)頁測(cè)試

三、部署Tomcat應(yīng)用服務(wù)器

1.實(shí)施準(zhǔn)備

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld.service
[root@localhost ~]# setenforce 0

2.安裝JDK,配置Java環(huán)境

[root@localhost ~]# rpm -ivh jdk-8u201-linux-x64.rpm

3.設(shè)置JDK環(huán)境

[root@localhost ~]# vim /etc/profile
...
#插入三行內(nèi)容
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 ~]# source /etc/profile

4.安裝配置Tomcat

[root@localhost ~]# tar zxvf apache-tomcat-9.0.16.tar.gz -C /opt/
[root@localhost ~]# cd /opt/
[root@localhost opt]# mv apache-tomcat-9.0.16/ /usr/local/tomcat

5. 優(yōu)化管理

[root@localhost ~]# ln -s /usr/local/tomcat/bin/startup.sh /usr/local/bin/
[root@localhost ~]# ln -s /usr/local/tomcat/bin/shutdown.sh /usr/local/bin/

6.啟動(dòng)服務(wù)startup.sh

Tomcat1的配置

1.創(chuàng)建一個(gè)測(cè)試目錄

[root@localhost ~]# mkdir /usr/local/tomcat/webapps/test      

2.動(dòng)態(tài)頁面的配置

[root@localhost ~]# vim /usr/local/tomcat/webapps/test/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html> 
<head>
<title>JSP test1 page </title>
</head>
<body>
<% out.println("動(dòng)態(tài)頁面 1,http://www.test1.com");%>
</body>
</html>
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml
...
<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" />   #大約160行插入
...
 
[root@localhost ~]# shutdown.sh
[root@localhost ~]# startup.sh

Tomcat2配置

1.創(chuàng)建一個(gè)測(cè)試目錄

[root@localhost ~]# mkdir /usr/local/tomcat/webapps/test    

2.動(dòng)態(tài)頁面的配置

[root@localhost ~]# vim /usr/local/tomcat/webapps/test/index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<html> 
<head>
<title>JSP test2 page </title>
</head>
<body>
<% out.println("動(dòng)態(tài)頁面 2,http://www.test2.com");%>
</body>
</html>
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml
...
<Context docBase="/usr/local/tomcat/webapps/test" path="" reloadable="true" />   #大約160行插入
...
 
[root@localhost ~]# shutdown.sh
[root@localhost ~]# startup.sh

3.nginx準(zhǔn)備靜態(tài)頁面

[root@localhost ~]# echo '<html><body><h1>靜態(tài)界面...</h1></body></html>' > /usr/local/nginx/html/index.html
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
...
upstream tomcat_server {
        server 192.168.192.147:8080 weight=1;
        server 192.168.192.153:8080 weight=1;
}
 
location ~ .*\.jsp$ {			 #把nginx接收到的客戶端的ip地址賦值給跳轉(zhuǎn)到tomcat請(qǐng)求中的源ip;識(shí)別客戶的真實(shí)ip,并且賦值與跳轉(zhuǎn)
        proxy_pass http://tomcat_server; 
        proxy_set_header HOST $host;	##設(shè)定后端的web服務(wù)器接收到的請(qǐng)求訪問的主機(jī)名(域名或ip、端口),默認(rèn)host的值為proxy_pass直連設(shè)置的主機(jī)名
        proxy_set_header X-Real-IP $remote_addr;	#把$remote_addr復(fù)制給X-Real-IP(自定義),來回去源IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;	#在nginx最為代理服務(wù)器時(shí),設(shè)置的IP列表,會(huì)把經(jīng)過的及其ip,代理及其ip都記錄下來
}
...
 
[root@localhost ~]#systemctl restart nginx.service

4.網(wǎng)頁測(cè)試效果

總結(jié)

可將兩個(gè)或多個(gè)Tomcat server 放到 Nginx 的 upstream 中組成一個(gè)負(fù)載均衡集群,然后通過 proxy_pass 這種 Web 代理的方式在 location 中設(shè)置集群站點(diǎn),然后再通過 weight 值來分別對(duì) Tomcat server 進(jìn)行權(quán)重的設(shè)置。

在生產(chǎn)環(huán)境中,Tomcat server 的硬件配置可能不盡相同,可以通過修改相應(yīng)服務(wù)器的 weight 值,對(duì)配置較高或配置較低的服務(wù)器的訪問請(qǐng)求進(jìn)行分配控制

到此這篇關(guān)于Nginx+Tomcat負(fù)載均衡集群安裝配置案例詳解的文章就介紹到這了,更多相關(guān)Nginx Tomcat負(fù)載均衡集群內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx的正則表達(dá)式詳解

    Nginx的正則表達(dá)式詳解

    今天來聊一聊他的正則表達(dá)式的使用規(guī)則,我會(huì)簡(jiǎn)單的舉幾個(gè)例子然后進(jìn)行說明講解,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • nginx中配置使用proxy?protocol協(xié)議的全過程

    nginx中配置使用proxy?protocol協(xié)議的全過程

    proxy protocol是一個(gè)Internet協(xié)議,通過為tcp添加一個(gè)很小的頭信息,來方便的傳遞客戶端信息,在網(wǎng)絡(luò)情況復(fù)雜又需要獲取用戶真實(shí)IP時(shí)非常有用,這篇文章主要給大家介紹了關(guān)于nginx中配置使用proxy?protocol協(xié)議的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄

    一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄

    這篇文章主要介紹了一次nginx 504 Gateway Time-out錯(cuò)誤排查、解決記錄,經(jīng)過反復(fù)檢查,發(fā)現(xiàn)造成這個(gè)問題的原因就是PHP的CURL沒有設(shè)置超時(shí)時(shí)間,解決辦法只要設(shè)置超時(shí)時(shí)間或者修改一下nginx的配置即可解決,需要的朋友可以參考下
    2014-05-05
  • Nginx內(nèi)網(wǎng)單機(jī)反向代理的實(shí)現(xiàn)

    Nginx內(nèi)網(wǎng)單機(jī)反向代理的實(shí)現(xiàn)

    本文主要介紹了Nginx內(nèi)網(wǎng)單機(jī)反向代理的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Nginx?403?forbidden錯(cuò)誤的五種原因及詳細(xì)解決方法

    Nginx?403?forbidden錯(cuò)誤的五種原因及詳細(xì)解決方法

    這篇文章主要給大家介紹了關(guān)于Nginx?403?forbidden錯(cuò)誤的五種原因及詳細(xì)解決方法,相信很多人對(duì)403 forbidden是什么意思有了大致的了解,那么當(dāng)我們遇到403 forbidden怎么解決呢,需要的朋友可以參考下
    2023-08-08
  • Nginx+SpringBoot實(shí)現(xiàn)負(fù)載均衡的示例

    Nginx+SpringBoot實(shí)現(xiàn)負(fù)載均衡的示例

    這篇文章主要介紹了Nginx優(yōu)雅的實(shí)現(xiàn)負(fù)載均衡,幫助大家更好的理解和使用nginx,感興趣的朋友可以了解下
    2020-10-10
  • Nginx實(shí)現(xiàn)UDP四層轉(zhuǎn)發(fā)的過程

    Nginx實(shí)現(xiàn)UDP四層轉(zhuǎn)發(fā)的過程

    為了解決VPN連接速度慢的問題,可以通過Nginx實(shí)現(xiàn)UDP的四層轉(zhuǎn)發(fā),首先檢查Nginx是否安裝了with-stream模塊,然后修改nginx.conf配置文件進(jìn)行UDP端口的轉(zhuǎn)發(fā)設(shè)置,使用nginx-t檢查配置文件語法,無誤后重新加載Nginx,這樣通過國內(nèi)服務(wù)器中轉(zhuǎn),可以提升連接到國外服務(wù)器的速率
    2024-09-09
  • 項(xiàng)目中Nginx多級(jí)代理是如何獲取客戶端的真實(shí)IP地址

    項(xiàng)目中Nginx多級(jí)代理是如何獲取客戶端的真實(shí)IP地址

    最近在研究nginx中如何獲取真實(shí)客戶端IP的方法,所以下面這篇文章主要給大家介紹了關(guān)于項(xiàng)目中Nginx多級(jí)代理是如何獲取客戶端的真實(shí)IP地址的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Nginx性能優(yōu)化之Gzip壓縮設(shè)置詳解(最大程度提高頁面打開速度)

    Nginx性能優(yōu)化之Gzip壓縮設(shè)置詳解(最大程度提高頁面打開速度)

    這篇文章主要介紹了Nginx性能優(yōu)化之Gzip壓縮設(shè)置詳解(最大程度提高頁面打開速度),需要的朋友可以參考下
    2022-01-01
  • Nginx圖片防盜鏈配置實(shí)例

    Nginx圖片防盜鏈配置實(shí)例

    這篇文章主要介紹了Nginx圖片防盜鏈配置實(shí)例,并對(duì)代碼做了詳細(xì)的說明,讓你充分理解配置的意圖,需要的朋友可以參考下
    2014-07-07

最新評(píng)論