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

nginx實(shí)現(xiàn)負(fù)載均衡與實(shí)例解讀

 更新時(shí)間:2025年04月22日 09:49:21   作者:程序猿John  
這篇文章主要介紹了nginx實(shí)現(xiàn)負(fù)載均衡與實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

1. 什么是nginx負(fù)載均衡

隨著業(yè)務(wù)量的提高,訪問量和數(shù)據(jù)流量的快速增長(zhǎng),其處理能力和計(jì)算強(qiáng)度也相應(yīng)地增大,使得單一的服務(wù)器設(shè)備根本無法承擔(dān) 。 對(duì)服務(wù)器升級(jí)費(fèi)用十分高昂(F5、Radware),甚至性能再卓越的設(shè)備也不能滿足當(dāng)前業(yè)務(wù)量增長(zhǎng)的需求。

針對(duì)此情況而衍生出來的一種廉價(jià)有效透明的方法以擴(kuò)展現(xiàn)有網(wǎng)絡(luò)設(shè)備和服務(wù)器的帶寬、增加吞吐量、加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力、提高網(wǎng)絡(luò)的靈活性和可用性的技術(shù)就是負(fù)載均衡(Load Balance)。

nginx負(fù)載均衡就是一種是通過軟件來進(jìn)行解決的,基于Linux系統(tǒng)并且開源的負(fù)載均衡策略.

2. 一般中型網(wǎng)站架構(gòu)圖

3. 實(shí)戰(zhàn)配置nginx負(fù)載均衡

負(fù)載均衡有多種算法:

  • 1.源地址哈希法
  • 2.輪詢法
  • 3.隨機(jī)法
  • 4.加權(quán)輪詢法
  • 5.最小連接數(shù)法 具體算法的意思網(wǎng)上一大把

3.1 負(fù)載均衡拓?fù)?/h3>

3.2 如何配置

upstream  test-server{
    server    47.106.98.90:80 weight=1;
    server    47.93.240.141:80 weight=2;
}

server {
    listen       80;
    server_name  www.test.com;
    location / {
        proxy_pass http://test-server;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr; //獲取轉(zhuǎn)發(fā) 客戶端ip
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
        proxy_redirect default;
    }

}

這段是nginx調(diào)度服務(wù)器上 nginx.conf里的設(shè)置

nginx的負(fù)載均衡主要就是以上代碼。 它放在http區(qū)塊里

test-server 是自定義的命名,可以自己自定。

意思是:

1. 當(dāng)用戶訪問 www.test.com時(shí) , 該訪問會(huì)根據(jù)權(quán)重 隨機(jī)分配到47.106.98.90 或 47.93.240.141 中,端口指定80

2. 這里用了權(quán)重的算法

3.3 演示

重啟nginx,第一次訪問http://www.test.com如圖所示

  • 第一次

  • 第二次

在我們10次的刷新訪問中,有3次是跳轉(zhuǎn)到90這個(gè)服務(wù)器中,基本符合權(quán)重的算法

4. 負(fù)載均衡的服務(wù)器如何保持內(nèi)容一致

4.1 那么如果其中一個(gè)服務(wù)器掛了,會(huì)怎樣呢?

我們把2號(hào)服務(wù)器(47.93.240.141)停掉

我們刷新下頁面 ,可以看到無論怎么刷新 , 都是只有1號(hào)服務(wù)器

4.2 負(fù)載均衡的服務(wù)器內(nèi)容如何保持內(nèi)容一致

① ==圖片問題==

可以單獨(dú)建立圖片服務(wù)器 或 7牛云的 圖片服務(wù)器 ,就是對(duì)象存儲(chǔ)OSS

5. 同樣的,負(fù)載均衡也可以是作為堡壘機(jī)

upstream  test-server{
    server    47.106.98.99:80 weight=1;
}

server {
    listen       80;
    server_name  www.test.com;
    location / {
        proxy_pass http://test-server;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr; //獲取轉(zhuǎn)發(fā) 客戶端ip
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
        proxy_redirect default;
    }

}

這樣就能保護(hù) 47.106.98.99 的真實(shí)ip 不暴露 , 真正暴露的是這個(gè)堡壘機(jī)的ip 。 (比如 47.100.100.100)

域名設(shè)置方面把 域名解析到 47.100.100.100 .

6. 配置轉(zhuǎn)發(fā) https

server {
    listen       443 ssl;
    server_name  www.test.com;
    ssl_certificate  /usr/local/wap.pem;
    ssl_certificate_key  /usr/local/wap.key;
    ssl_protocols        TLSv1.2;
    ssl_ciphers          HIGH:!aNULL:!MD5;
    location / {
        limit_req zone=mylimit burst=50 nodelay;
        proxy_pass https://192.168.1.62;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
        proxy_redirect default;
    }

}

轉(zhuǎn)發(fā) https ,需要證書 ,劃下重點(diǎn)

ssl_certificate  /usr/local/wap.pem;
ssl_certificate_key  /usr/local/wap.key;

7. 國(guó)內(nèi)網(wǎng)址反向代理到國(guó)外https網(wǎng)址

server {
    listen       80;
    server_name  ai.abc.com;
    location / {
        proxy_ssl_server_name on;
        proxy_ssl_name api.openai.com;
        proxy_ssl_verify off;
        proxy_pass https://api.openai.com;
        proxy_set_header Host api.openai.com;
        proxy_set_header Accept-Encoding '';
    }

}

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx基于漏桶算法配置限流詳解

    Nginx基于漏桶算法配置限流詳解

    這篇文章主要為大家介紹了Nginx基于漏桶算法配置限流詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • 如何在nginx中配置緩存靜態(tài)文件

    如何在nginx中配置緩存靜態(tài)文件

    本篇文章主要介紹了如何在 nginx 中緩存靜態(tài)文件配置,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • 詳解Nginx服務(wù)器中配置超時(shí)時(shí)間的方法

    詳解Nginx服務(wù)器中配置超時(shí)時(shí)間的方法

    這篇文章主要介紹了Nginx服務(wù)器中配置超時(shí)時(shí)間的方法,同時(shí)也對(duì)Nginx中的時(shí)間管理機(jī)制作了詳細(xì)的介紹,需要的朋友可以參考下
    2015-12-12
  • Nginx代理Redis哨兵主從配置的實(shí)現(xiàn)

    Nginx代理Redis哨兵主從配置的實(shí)現(xiàn)

    本文主要介紹了Nginx代理Redis哨兵主從配置的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 歐拉部署nginx的實(shí)現(xiàn)步驟

    歐拉部署nginx的實(shí)現(xiàn)步驟

    本文主要介紹了歐拉部署nginx的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • Nginx安裝后/etc/nginx/conf.d下沒有default.conf的解決

    Nginx安裝后/etc/nginx/conf.d下沒有default.conf的解決

    nginx.conf是nginx默認(rèn)加載的配置文件 通過nginx -V可以看nginx默認(rèn)配置文件路徑,本文主要介紹了Nginx安裝后/etc/nginx/conf.d下沒有default.conf的解決,感興趣的可以了解一下
    2023-11-11
  • Nginx 啟用 OCSP Stapling的配置

    Nginx 啟用 OCSP Stapling的配置

    本篇文章主要介紹了Nginx 啟用 OCSP Stapling的配置,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • Nginx增添api接口的實(shí)現(xiàn)方法

    Nginx增添api接口的實(shí)現(xiàn)方法

    這篇文章給大家介紹了Nginx增添api接口的方法,文章通過代碼示例介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-10-10
  • 深入探究Nginx負(fù)載均衡原理及配置方法

    深入探究Nginx負(fù)載均衡原理及配置方法

    Nginx 作為一款卓越的 Web 服務(wù)器,不僅提供了強(qiáng)大的性能,還內(nèi)置了負(fù)載均衡功能,本文將深入研究 Nginx 負(fù)載均衡的原理、策略以及配置方法,助您構(gòu)建一個(gè)穩(wěn)定、高效的應(yīng)用架構(gòu),需要的朋友可以參考下
    2023-08-08
  • nginx配置多個(gè)前端項(xiàng)目實(shí)現(xiàn)步驟

    nginx配置多個(gè)前端項(xiàng)目實(shí)現(xiàn)步驟

    本文主要介紹了nginx配置多個(gè)前端項(xiàng)目實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評(píng)論