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

springboot整合Nginx實(shí)現(xiàn)負(fù)載均衡反向代理的方法詳解

 更新時(shí)間:2022年01月18日 10:16:45   作者:哪?吒  
這篇文章主要給大家介紹了關(guān)于springboot整合Nginx實(shí)現(xiàn)負(fù)載均衡反向代理的相關(guān)資料,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

一、百度百科

Nginx是一個(gè)高性能的HTTP和反向代理web服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù)。Nginx是由伊戈?duì)?middot;賽索耶夫?yàn)槎砹_斯訪問(wèn)量第二的Rambler.ru站點(diǎn)開(kāi)發(fā)的,第一個(gè)公開(kāi)版本0.1.0發(fā)布于2004年10月4日。

其將源代碼以類(lèi)BSD許可證的形式發(fā)布,因它的穩(wěn)定性、豐富的功能集、簡(jiǎn)單的配置文件和低系統(tǒng)資源的消耗而聞名。

Nginx是一款輕量級(jí)的web服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,在BSD-like協(xié)議下發(fā)行。其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上Nginx的并發(fā)能力在同類(lèi)型的網(wǎng)頁(yè)服務(wù)器中表現(xiàn)較好,中國(guó)大陸使用Nginx網(wǎng)站用戶(hù)有:阿里、百度、京東、新浪、網(wǎng)易、騰訊等。

二、Nginx作為web服務(wù)器

Nginx可以作為靜態(tài)頁(yè)面的web服務(wù)器,同時(shí)還提供CGI協(xié)議的動(dòng)態(tài)語(yǔ)言,比如perl、php等。但是不支持java。Java只能通過(guò)與tomcat配合完成。Nginx專(zhuān)為性能優(yōu)化而開(kāi)發(fā),性能是起最重要的考量,實(shí)現(xiàn)上非常注重效率,能經(jīng)受高負(fù)載的考研,有報(bào)告表明能支持高達(dá)50000個(gè)并發(fā)連接數(shù)。

三、Nginx處理請(qǐng)求邏輯圖

四、Nginx的優(yōu)點(diǎn)

  • 可以高并發(fā)連接;
  • 內(nèi)存消耗少;
  • 成本低廉;
  • 配置文件非常簡(jiǎn)單;
  • 支持Rewrite重寫(xiě)(能夠根據(jù)域名、URL的不同,將http請(qǐng)求分到不同的后端服務(wù)器群組。);
  • 內(nèi)置的健康檢查功能;
  • 節(jié)省帶寬(支持GZIP壓縮,可以添加瀏覽器本地緩存的Header頭。);
  • 穩(wěn)定性高(用于反向代理,宕機(jī)的概率微乎其微。);
  • 支持熱部署;

五、Nginx應(yīng)用場(chǎng)景

正向代理介紹

如果把局域網(wǎng)外的Internet想象成一個(gè)巨大的資源庫(kù),則局域網(wǎng)中的客戶(hù)端要訪問(wèn)Internet,則需要通過(guò)代理服務(wù)器來(lái)訪問(wèn),這種代理服務(wù)就稱(chēng)為正向代理。

1、反向代理

客戶(hù)端對(duì)代理是無(wú)感知的,因?yàn)榭蛻?hù)端不需要任何配置就可以訪問(wèn),我們只需要將請(qǐng)求發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器去選擇目標(biāo)服務(wù)器獲取數(shù)據(jù),再返回給客戶(hù)端,此時(shí)反向代理服務(wù)器和目標(biāo)服務(wù)器對(duì)外就是一個(gè)服務(wù)器,暴露的是代理服務(wù)器地址,隱藏了真實(shí)服務(wù)器IP地址。

2、負(fù)載均衡

單個(gè)服務(wù)器解決不了,我們?cè)黾臃?wù)器的數(shù)量,然后將請(qǐng)求分發(fā)到各個(gè)服務(wù)器上,將原先請(qǐng)求集中到單個(gè)服務(wù)器上的情況改為將請(qǐng)求分發(fā)到多個(gè)服務(wù)器上,這就是負(fù)載均衡。

3、動(dòng)靜分離

為了加快網(wǎng)站的解析速度,可以把動(dòng)態(tài)頁(yè)面和靜態(tài)頁(yè)面由不同的服務(wù)器來(lái)解析,加快解析速度,降低原來(lái)單個(gè)服務(wù)器的壓力。

六、Nginx的常用命令

1、啟動(dòng)

啟動(dòng)代碼格式:nginx安裝目錄地址 -c nginx配置文件地址

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

2、從容停止

(1)查看進(jìn)程號(hào)

ps -ef|grep nginx
(2)殺死進(jìn)程

kill -QUIT 2072

3、快速停止

(1)查看進(jìn)程號(hào)

ps -ef|grep nginx

(2)殺死進(jìn)程

kill -TERM 2132

4、強(qiáng)制停止

pkill -9 nginx

5、重啟

(1)驗(yàn)證nginx配置文件是否正確

方法一:進(jìn)入nginx安裝目錄sbin下,輸入命令./nginx -t

看到如下顯示nginx.conf syntax is ok

nginx.conf test is successful

方法二:在啟動(dòng)命令-c前加-t

/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

6、重啟Nginx服務(wù)

方法一:進(jìn)入nginx可執(zhí)行目錄sbin下,輸入命令./nginx -s reload 即可

方法二:查找當(dāng)前nginx進(jìn)程號(hào),然后輸入命令:kill -HUP 進(jìn)程號(hào) 實(shí)現(xiàn)重啟nginx服務(wù)

七、Nginx配置文件

1、找到配置文件位置:

cd /usr/local/nginx/conf/nginx.conf

2、配置文件中內(nèi)容

  • 全局塊:配置服務(wù)器整體運(yùn)行的配置指令 比如 worker_processes 1;處理并發(fā)數(shù)的配置;
  • events 塊:影響 Nginx 服務(wù)器與用戶(hù)的網(wǎng)絡(luò)連接 比如 worker_connections 1024; 支持的最大連接數(shù)為 1024;
  • http 塊 還包含兩部分: http 全局塊 server 塊;

八、Nginx 配置實(shí)例-反向代理實(shí)例

1、實(shí)現(xiàn)效果

打開(kāi)瀏覽器,在瀏覽器地址欄輸入地址 www.123.com,跳轉(zhuǎn)到 liunx 系統(tǒng) tomcat 主頁(yè)面中

2、準(zhǔn)備工作

  1. 在 liunx 系統(tǒng)安裝 tomcat,使用默認(rèn)端口 8080 * tomcat 安裝文件放到 liunx 系統(tǒng)中,解壓 * 進(jìn)入 tomcat 的 bin 目錄中,./startup.sh 啟動(dòng) tomcat 服務(wù)器
  2. 對(duì)外開(kāi)放訪問(wèn)的端口 firewall-cmd --add-port=8080/tcp --permanent firewall-cmd –reload 查看已經(jīng)開(kāi)放的端口號(hào) firewall-cmd --list-all
  3. 在 windows 系統(tǒng)中通過(guò)瀏覽器訪問(wèn) tomcat 服務(wù)器

3、訪問(wèn)過(guò)程的分析

4、具體配置

第一步 在 windows 系統(tǒng)的 host 文件進(jìn)行域名和 ip 對(duì)應(yīng)關(guān)系的配置

(1)添加內(nèi)容在 host 文件中

192.168.17.129 www.123.com

第二步 在 nginx 進(jìn)行請(qǐng)求轉(zhuǎn)發(fā)的配置(反向代理配置)

server{
	listen:80;
	server_name 192.168.100.1;
	location / {
		root html;
		proxy pass http://127.0.0.1:8080;
		index index.html index.htm;
	}
}

5、最終測(cè)試

九、Nginx 的原理

1、mater 和 worker

2、worker 如何進(jìn)行工作的

3、一個(gè) master 和多個(gè) woker 有好處

  • 可以使用 nginx –s reload 熱部署,利用 nginx 進(jìn)行熱部署操作;
  • 每個(gè) woker 是獨(dú)立的進(jìn)程,如果有其中的一個(gè) woker 出現(xiàn)問(wèn)題,其他 woker 獨(dú)立的, 繼續(xù)進(jìn)行爭(zhēng)搶?zhuān)瑢?shí)現(xiàn)請(qǐng)求過(guò)程,不會(huì)造成服務(wù)中斷

4、設(shè)置多少個(gè) woker 合適

worker 數(shù)和服務(wù)器的 cpu 數(shù)相等是最為適宜的。

5、連接數(shù) worker_connection

第一個(gè):發(fā)送請(qǐng)求,占用了 woker 的幾個(gè)連接數(shù)? 答案:2 或者 4 個(gè);

第二個(gè):nginx 有一個(gè) master,有四個(gè) woker,每個(gè) woker 支持最大的連接數(shù) 1024,支持的 最大并發(fā)數(shù)是多少?

普通的靜態(tài)訪問(wèn)最大并發(fā)數(shù)是: worker_connections * worker_processes /2;

而如果是 HTTP 作 為反向代理來(lái)說(shuō),

最大并發(fā)數(shù)量應(yīng)該是 worker_connections * worker_processes/4;

總結(jié)

到此這篇關(guān)于springboot整合Nginx實(shí)現(xiàn)負(fù)載均衡反向代理的文章就介紹到這了,更多相關(guān)springboot整合Nginx負(fù)載均衡反向代理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于Struts文件上傳(FormFile)詳解

    基于Struts文件上傳(FormFile)詳解

    下面小編就為大家?guī)?lái)一篇基于Struts文件上傳(FormFile)詳解。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • java數(shù)據(jù)結(jié)構(gòu)與算法之雙向循環(huán)隊(duì)列的數(shù)組實(shí)現(xiàn)方法

    java數(shù)據(jù)結(jié)構(gòu)與算法之雙向循環(huán)隊(duì)列的數(shù)組實(shí)現(xiàn)方法

    這篇文章主要介紹了java數(shù)據(jù)結(jié)構(gòu)與算法之雙向循環(huán)隊(duì)列的數(shù)組實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了雙向循環(huán)隊(duì)列的原理與數(shù)組實(shí)現(xiàn)技巧,并附帶說(shuō)明了該算法的用途,需要的朋友可以參考下
    2016-08-08
  • java實(shí)現(xiàn)voctor按指定方式排序示例分享

    java實(shí)現(xiàn)voctor按指定方式排序示例分享

    這篇文章主要介紹了java實(shí)現(xiàn)voctor按指定方式排序示例,需要的朋友可以參考下
    2014-03-03
  • Lucene單值編碼壓縮算法源碼解析

    Lucene單值編碼壓縮算法源碼解析

    這篇文章主要為大家介紹了Lucene單值編碼壓縮算法源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • Java實(shí)現(xiàn)圓形碰撞檢測(cè)

    Java實(shí)現(xiàn)圓形碰撞檢測(cè)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)圓形碰撞檢測(cè),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • 使用eclipse + maven一步步搭建SSM框架教程詳解

    使用eclipse + maven一步步搭建SSM框架教程詳解

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三個(gè)開(kāi)源框架整合而成,常作為數(shù)據(jù)源較簡(jiǎn)單的web項(xiàng)目的框架.這篇文章主要介紹了eclipse + maven搭建SSM框架 ,需要的朋友可以參考下
    2017-11-11
  • Java線程優(yōu)先級(jí)和守護(hù)線程原理解析

    Java線程優(yōu)先級(jí)和守護(hù)線程原理解析

    這篇文章主要介紹了Java線程優(yōu)先級(jí)和守護(hù)線程原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Spring實(shí)現(xiàn)上拉刷新和下拉加載效果

    Spring實(shí)現(xiàn)上拉刷新和下拉加載效果

    這篇文章主要為大家詳細(xì)介紹了Spring實(shí)現(xiàn)上拉刷新和下拉加載效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • IDEA找不到j(luò)dk該如何解決

    IDEA找不到j(luò)dk該如何解決

    這篇文章主要給大家介紹了關(guān)于IDEA找不到j(luò)dk該如何解決的相關(guān)資料,剛安裝好IDEA后,我們運(yùn)行一個(gè)項(xiàng)目時(shí)候,有時(shí)候會(huì)遇到顯示找不到Java的JDK,需要的朋友可以參考下
    2023-11-11
  • SpringBoot中連接多個(gè)RabbitMQ的方法詳解

    SpringBoot中連接多個(gè)RabbitMQ的方法詳解

    這篇文章主要介紹了SpringBoot中連接多個(gè)RabbitMQ的方法詳解,要實(shí)現(xiàn) SpringBoot 連接多個(gè) RabbitMQ,只能自定義重寫(xiě)一些東西,分別配置才可以,下面一起來(lái)走一下試試,需要的朋友可以參考下
    2023-10-10

最新評(píng)論