亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務,提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

目錄
  • Nginx的主要應用場景
    • 靜態(tài)網(wǎng)站部署
    • 負載均衡
  • Nginx的使用場景及示例
    • 1.靜態(tài)資源服務器
    • 2.反向代理
    • 3.負載均衡器
    • 4.緩存服務器
    • 5.反向代理服務器
    • 6.WebSocket服務器
  • 總結(jié)

    Nginx的主要應用場景

    靜態(tài)網(wǎng)站部署

    nginx是一個http的web服務器,可以將服務器上的靜態(tài)文件(html、css、圖片)通過HTTP協(xié)議返回給瀏覽器客戶端。

    舉例:我們在服務器上部署一個靜態(tài)資源index.html

    Nginx中的主要應用場景解讀

    將index.html上傳至linux /opt/www/test

    Nginx中的主要應用場景解讀

    修改nginx.conf 增加一個location,攔截/test的請求,root 對應的/opt/www路徑代表根路徑,也就是/test前面的/斜杠

    location /test {
                root   /opt/www;
                index  index.html;
            }

    啟動nginx或者重新加載nginx

    Nginx中的主要應用場景解讀

    我們訪問下:http://192.168.253.130/test/ 

    Nginx中的主要應用場景解讀

    負載均衡

    負載均衡可以分為硬件負載均衡和軟件負載均衡

    硬件負載均衡,比如F5、深信服、Array等,優(yōu)點是有廠商專業(yè)團隊支持,性能穩(wěn)定;缺點是價格昂貴

    軟件負載均衡,比如Nginx、LVS、HAProxy等,優(yōu)點是免費開源,成本低廉

    輪詢法:將請求按順序輪流地分配到后端服務器上,它均衡地對待后端的每一臺服務器,而不關(guān)心服務器實際的連接數(shù)和當前的系統(tǒng)負載。

    http {
        upstream test{
        ##后端實際服務器 nginx在輪詢訪問以下幾臺服務器
            server 10.100.30.1:8080;
            server 10.100.30.2:8080;
            server 10.100.30.3:8080;
            server 10.100.30.4:8080;
        }
        server {
        ##前端攔截入口
            listen 80;
            server_name www.test.com;
            location / { 
                proxy_pass http://test;
            }
        }
    }

    加權(quán)輪詢法:不同的后端服務器可能機器的配置和當前系統(tǒng)的負載并不相同,因此它們的抗壓能力也不相同。

    給配置高、負載低的機器配置更高的權(quán)重,讓其處理更多的請;而配置低、負載高的機器,給其分配較低的權(quán)重,降低其系統(tǒng)負載,加權(quán)輪詢能很好地處理這一問題,并將請求順序且按照權(quán)重分配到后端。

    http {
        upstream test{
        ##后端實際服務器 nginx在輪詢訪問以下幾臺服務器
            server 10.100.30.1:8080 weight=1;
            server 10.100.30.2:8080 weight=3;
            server 10.100.30.3:8080 weight=1;
            server 10.100.30.4:8080 weight=1;
        }
        server {
        ##前端攔截入口
            listen 80;
            server_name www.test.com;
            location / { 
                proxy_pass http://test;
            }
        }
    }

    源地址哈希法:根據(jù)獲取客戶端的IP地址,通過哈希函數(shù)計算得到一個數(shù)值,用該數(shù)值對服務器列表的大小進行取模運算,得到的結(jié)果便是客服端要訪問服務器的序號。

    采用源地址哈希法進行負載均衡,同一IP地址的客戶端,當后端服務器列表不變時,它每次都會映射到同一臺后端服務器進行訪問。

    upstream test{
            ip_hash;
            server 10.100.30.1:8080 weight=1;
            server 10.100.30.2:8080 weight=3;
            server 10.100.30.3:8080 weight=1;
            server 10.100.30.4:8080 weight=1;
        }

    最小連接數(shù)法:由于后端服務器的配置不盡相同,對于請求的處理有快有慢,最小連接數(shù)法根據(jù)后端服務器當前的連接情況,動態(tài)地選取其中當前積壓連接數(shù)最少的一臺服務器來處理當前的請求,盡可能地提高后端服務的利用效率,將負責合理地分流到每一臺服務器。

    upstream test{
            least_conn;
            server 10.100.30.1:8080;
            server 10.100.30.2:8080;
            server 10.100.30.3:8080;
            server 10.100.30.4:8080;
        }

    down:表示停掉某臺服務

    upstream test{
            server 10.100.30.1:8080 down;
            server 10.100.30.2:8080;
            server 10.100.30.3:8080;
            server 10.100.30.4:8080;
        }

    backup:指定備用服務器,正常情況下只要有其他服務器能正常訪問,備用服務器不會被訪問到,只有其他服務器都掛掉的時候,才會使用備用服務器,所以采用這種方式一般用來實現(xiàn)熱部署,先把代碼更新到備用服務器上,然后停掉正常服務器,正常服務器部署完成后,備用服務器又處于等待狀態(tài),整個部署過程使用戶能夠感受不到停機。

    upstream test{
            server 10.100.30.1:8080 backup;
            server 10.100.30.2:8080 backup;
            server 10.100.30.3:8080;
            server 10.100.30.4:8080;
        }
    • 靜態(tài)代理
    • 動靜分離
    • 虛擬主機

    Nginx的使用場景及示例

    Nginx是一款高性能、高并發(fā)的HTTP服務器和反向代理服務器,可用于靜態(tài)資源服務器、負載均衡器、反向代理、緩存服務器、Web服務器等多種場景。

    下面列舉幾個使用場景和示例:

    1.靜態(tài)資源服務器

    在使用Nginx作為靜態(tài)資源服務器時,Nginx會直接返回請求的文件,從而減輕Web服務器的負擔。這種場景通常用于提供靜態(tài)文件下載或者視頻等大文件的訪問。

    下面是一個示例Nginx配置:

    server {
    ? ? listen ? ? ? 80;
    ? ? server_name ?example.com;
    ? ? location / {
    ? ? ? ? root ? /usr/share/nginx/html;
    ? ? ? ? index ?index.html index.htm;
    ? ? }
    ? ? location /images/ {
    ? ? ? ? alias /var/www/images/;
    ? ? }
    ? ? location /downloads/ {
    ? ? ? ? alias /var/www/downloads/;
    ? ? }
    }

    上述配置中,Nginx會將訪問根目錄(/)的請求映射到/usr/share/nginx/html目錄下,如果請求的是/images/目錄下的文件,Nginx則會映射到/var/www/images/目錄下,如果請求的是/downloads/目錄下的文件,Nginx則會映射到/var/www/downloads/目錄下。

    2.反向代理

    在使用Nginx作為反向代理服務器時,Nginx會將請求轉(zhuǎn)發(fā)給Web服務器進行處理,然后將處理結(jié)果返回給客戶端。

    這種場景通常用于實現(xiàn)負載均衡、提高Web服務器的安全性、隱藏Web服務器的真實IP等。

    下面是一個示例Nginx配置:

    upstream backend {
    ? ? server backend1.example.com:8080 weight=3;
    ? ? server backend2.example.com:8080;
    }
    server {
    ? ? listen 80;
    ? ? server_name example.com;
    ? ? location / {
    ? ? ? ? proxy_pass http://backend;
    ? ? ? ? proxy_set_header Host $host;
    ? ? ? ? proxy_set_header X-Real-IP $remote_addr;
    ? ? }
    }

    上述配置中,Nginx會將訪問根目錄(/)的請求轉(zhuǎn)發(fā)給后端的Web服務器(backend1.example.com和backend2.example.com),其中backend1.example.com的權(quán)重為3,backend2.example.com的權(quán)重為1,表示backend1.example.com的處理能力更強。

    在轉(zhuǎn)發(fā)請求時,Nginx還會設(shè)置HTTP頭信息中的Host和X-Real-IP字段,從而隱藏Web服務器的真實IP。

    3.負載均衡器

    在使用Nginx作為負載均衡器時,Nginx會將請求均衡地分發(fā)到多個Web服務器上,從而實現(xiàn)高并發(fā)、高可用的服務。這種場景通常用于Web應用程序的集群部署、分布式系統(tǒng)的部署等。下面是一個示例Nginx配置:

    upstream backend {
    ? ? server backend1.example.com:8080;
    ? ? server backend2.example.com:8080;
    ? ? server backend3.example.com:8080;
    }
    server {
    ? ? listen 80;
    ? ? server_name example.com;
    ? ? location / {
    ? ? proxy_pass http://backend;
    ? ? proxy_set_header Host $host;
    ? ? proxy_set_header X-Real-IP $remote_addr;
    ?? ?}
    }

    上述配置中,Nginx會將請求均衡地分發(fā)到三個Web服務器(backend1.example.com、backend2.example.com和backend3.example.com)上,從而實現(xiàn)負載均衡。

    在轉(zhuǎn)發(fā)請求時,Nginx還會設(shè)置HTTP頭信息中的Host和X-Real-IP字段,從而隱藏Web服務器的真實IP。

    4.緩存服務器

    在使用Nginx作為緩存服務器時,Nginx會緩存Web服務器返回的響應,從而減少對Web服務器的請求。這種場景通常用于提高Web應用程序的性能、降低Web服務器的負載等。下面是一個示例Nginx配置:

    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;
    server {
    listen 80;
    server_name example.com;
    ?? ?location / {
    ?? ? ? ?proxy_cache my_cache;
    ?? ? ? ?proxy_pass http://backend;
    ?? ? ? ?proxy_set_header Host $host;
    ?? ? ? ?proxy_set_header X-Real-IP $remote_addr;
    ?? ?}
    }

    上述配置中,Nginx會將Web服務器返回的響應緩存到/var/cache/nginx/my_cache目錄下,并設(shè)置緩存有效期為60分鐘。在緩存命中時,Nginx會直接返回緩存的響應,從而減少對Web服務器的請求。

    總之,Nginx具有很強的可擴展性和靈活性,可以根據(jù)不同的需求配置不同的使用場景。以上僅是一些示例,實際應用中還有很多其他的使用場景。

    5.反向代理服務器

    在使用Nginx作為反向代理服務器時,Nginx會將客戶端請求轉(zhuǎn)發(fā)到后端的Web服務器上,并將后端服務器返回的響應轉(zhuǎn)發(fā)給客戶端。這種場景通常用于隱藏后端服務器的真實IP、提高Web應用程序的可用性等。下面是一個示例Nginx配置:

    server {
    ? ? listen 80;
    ? ? server_name example.com;
    ? ? location / {
    ? ? ? ? proxy_pass http://backend;
    ? ? ? ? proxy_set_header Host $host;
    ? ? ? ? proxy_set_header X-Real-IP $remote_addr;
    ? ? }
    }

    上述配置中,Nginx會將客戶端請求轉(zhuǎn)發(fā)到http://backend上,并設(shè)置HTTP頭信息中的Host和X-Real-IP字段,從而隱藏后端服務器的真實IP。

    6.WebSocket服務器

    在使用Nginx作為WebSocket服務器時,Nginx會將客戶端請求轉(zhuǎn)發(fā)到后端的WebSocket服務器上,并實現(xiàn)WebSocket協(xié)議的連接管理。這種場景通常用于實時通信、游戲等應用程序。

    下面是一個示例Nginx配置:

    map $http_upgrade $connection_upgrade {
    ? ? default upgrade;
    ? ? '' close;
    }
    server {
    ? ? listen 80;
    ? ? server_name example.com;
    ? ? location / {
    ? ? ? ? proxy_pass http://backend;
    ? ? ? ? proxy_http_version 1.1;
    ? ? ? ? proxy_set_header Upgrade $http_upgrade;
    ? ? ? ? proxy_set_header Connection $connection_upgrade;
    ? ? ? ? proxy_set_header Host $host;
    ? ? ? ? proxy_set_header X-Real-IP $remote_addr;
    ? ? }
    }

    上述配置中,Nginx會將WebSocket請求轉(zhuǎn)發(fā)到http://backend上,并設(shè)置HTTP頭信息中的Upgrade、Connection、Host和X-Real-IP字段,從而實現(xiàn)WebSocket協(xié)議的連接管理。

    總之,Nginx具有很多的使用場景,可以根據(jù)不同的需求配置不同的服務器功能。以上僅是一些示例,實際應用中還有很多其他的使用場景。

    總結(jié)

    以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持。

    分享到:
    標簽:nginx 場景 服務器 解讀
    用戶無頭像

    網(wǎng)友整理

    注冊時間:

    網(wǎng)站:5 個   小程序:0 個  文章:12 篇

    • 51998

      網(wǎng)站

    • 12

      小程序

    • 1030137

      文章

    • 747

      會員

    趕快注冊賬號,推廣您的網(wǎng)站吧!
    最新入駐小程序

    數(shù)獨大挑戰(zhàn)2018-06-03

    數(shù)獨一種數(shù)學游戲,玩家需要根據(jù)9

    答題星2018-06-03

    您可以通過答題星輕松地創(chuàng)建試卷

    全階人生考試2018-06-03

    各種考試題,題庫,初中,高中,大學四六

    運動步數(shù)有氧達人2018-06-03

    記錄運動步數(shù),積累氧氣值。還可偷

    每日養(yǎng)生app2018-06-03

    每日養(yǎng)生,天天健康

    體育訓練成績評定2018-06-03

    通用課目體育訓練成績評定