国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

03Nginx的靜態(tài)資源部署,反向代理,負(fù)載均衡,動(dòng)靜分離的配置

這篇具有很好參考價(jià)值的文章主要介紹了03Nginx的靜態(tài)資源部署,反向代理,負(fù)載均衡,動(dòng)靜分離的配置。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Nginx具體應(yīng)用

部署靜態(tài)資源

Nginx相對(duì)于Tomcat處理靜態(tài)資源的能力更加高效,所以在生產(chǎn)環(huán)境下一般都會(huì)將Nginx可以作為靜態(tài)web服務(wù)器來部署靜態(tài)資源

  • 靜態(tài)資源: 在服務(wù)端真實(shí)存在并且能夠直接展示的一些html頁(yè)面、css文件、js文件、圖片、視頻等資源文件
  • 將靜態(tài)資源部署到Nginx非常簡(jiǎn)單,只需要將靜態(tài)資源文件放到到Nginx安裝目錄下的html目錄中就可以正常訪問
http {                                        
    include       mime.types;                    
    default_type  application/octet-stream;  
    sendfile        on;  
    keepalive_timeout  65;  
    server {
        # 監(jiān)聽80端口
        listen       80;       
        # 服務(wù)器的IP地址(域名)
        server_name  localhost; 
        # 處理80端口的location塊,用來匹配客戶端請(qǐng)求的url,匹配到后去根目錄找對(duì)應(yīng)的文件
        location / {
        	# 指定靜態(tài)資源的根目錄,默認(rèn)當(dāng)前目錄是配置文件所在的conf目錄,html目錄和conf目錄同級(jí)
            root   html;
            # 指定默認(rèn)訪問的首頁(yè)(可以指定多個(gè),中間用空格隔開,以";"結(jié)尾),默認(rèn)當(dāng)前目錄是我們指定的根目錄
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

正向/反向代理

正向代理: 為了從目標(biāo)服務(wù)器取得內(nèi)容, 客戶端向代理服務(wù)器發(fā)送一個(gè)請(qǐng)求并指定目標(biāo)服務(wù)器的地址,然后代理將請(qǐng)求轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器并將獲得的內(nèi)容返回給客戶端

  • 正向代理是給客戶端設(shè)置代理服務(wù)器,客戶端知道代理服務(wù)器的存在, 通過代理服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求最終訪問到目標(biāo)服務(wù)器
  • 正向代理的典型用途是為在防火墻內(nèi)的局域網(wǎng)客戶端提供訪問Internet的途徑即通過代理訪問無法訪問的資源

反向代理: 用戶直接訪問反向代理服務(wù)器就可以獲得目標(biāo)服務(wù)器的資源(用戶不需要指定目標(biāo)服務(wù)器的地址), 反向代理服務(wù)器負(fù)責(zé)將請(qǐng)求轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器

  • 反向代理服務(wù)器也是位于用戶與目標(biāo)服務(wù)器之間,但卻是給服務(wù)端設(shè)置代理服務(wù)器(用戶不知道它的存在),用戶以為自己訪問的就是目標(biāo)服務(wù)器

nginx代理靜態(tài)資源,Nginx,負(fù)載均衡,nginx

正向代理和反向代理的區(qū)別

  • 正向代理隱藏的是用戶: 原始服務(wù)器接收的是代理服務(wù)器的請(qǐng)求,用戶知道可以通過代理服務(wù)器訪問無法訪問的資源(幫助客戶端訪問目標(biāo)服務(wù)器)
  • 反向代理隱藏的是服務(wù)器: 用戶以為自己訪問的是目標(biāo)服務(wù)器,其實(shí)自己訪問的資源是通過反向代理服務(wù)器轉(zhuǎn)發(fā)的(幫助目標(biāo)服務(wù)器統(tǒng)一處理請(qǐng)求)

負(fù)載均衡

隨著業(yè)務(wù)流量越來越大并且業(yè)務(wù)邏輯也越來越復(fù)雜, 單臺(tái)服務(wù)器的性能及單點(diǎn)故障問題就凸顯出來了, 因此需要多臺(tái)服務(wù)器組成應(yīng)用集群進(jìn)行性能的水平擴(kuò)展

  • 應(yīng)用集群: 將同一應(yīng)用部署到多臺(tái)機(jī)器上組成應(yīng)用集群,集群接收負(fù)載均衡器分發(fā)的請(qǐng)求進(jìn)行業(yè)務(wù)處理并返回響應(yīng)數(shù)據(jù)
  • 負(fù)載均衡器: 將用戶請(qǐng)求根據(jù)對(duì)應(yīng)的負(fù)載均衡算法分發(fā)到應(yīng)用集群中的一臺(tái)服務(wù)器進(jìn)行處理,既保證服務(wù)的可用性又保證響應(yīng)足夠快
  • 注意: Nginx是在服務(wù)端實(shí)現(xiàn)負(fù)載均衡,在SpringCloud的客戶端我們也可以實(shí)現(xiàn)負(fù)載均衡

nginx代理靜態(tài)資源,Nginx,負(fù)載均衡,nginx

負(fù)載均衡的規(guī)則

名稱 說明
輪詢(默認(rèn)方式) 每個(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器掛掉能自動(dòng)剔除
weight 權(quán)重方式(權(quán)重默認(rèn)為 1,權(quán)重越高請(qǐng)求分發(fā)機(jī)率越高)
ip_hash 每個(gè)請(qǐng)求按訪問ip的hash結(jié)果分配,這樣每個(gè)訪客固定訪問一個(gè)后端服務(wù)器(IP地址固定),可以解決session的問題
least_conn 依據(jù)最少連接方式,分發(fā)給處理連接少的服務(wù)器
url_hash 依據(jù)url分配方式,一個(gè)固定的url對(duì)應(yīng)的服務(wù)器也是固定的
fair 按后端服務(wù)器的響應(yīng)時(shí)間來分配請(qǐng)求,響應(yīng)時(shí)間短的服務(wù)器優(yōu)先分配請(qǐng)求
# 不指定默認(rèn)采用輪詢的方式實(shí)現(xiàn)負(fù)載均衡
upstream myserver{
        server 192.168.77.130:8080;
        server 192.168.77.130:8081;
}
# 采用權(quán)重的方式實(shí)現(xiàn)負(fù)載均衡
upstream myserver{
          server 192.168.77.130:8080 weight=10;
          server 192.168.77.130:8081 weight=5;
}
# 訪問ip的hash結(jié)果實(shí)現(xiàn)負(fù)載均衡
upstream myserver{
            ip_hash;
            server 192.168.77.130:8080;
            server 192.168.77.130:8081;
 }
# 按后端服務(wù)器的響應(yīng)時(shí)間實(shí)現(xiàn)負(fù)載均衡
upstream myserver{
             server 192.168.77.130:8080;
             server 192.168.77.130:8081;
             fair;
}

需求: 瀏覽器地址欄輸入地址http://192.168.17.129/edu/a.html,根據(jù)負(fù)載均衡效果將請(qǐng)求平均分配到兩臺(tái)tomcat服務(wù)器的8080和8081端口中

  • 在服務(wù)器的兩臺(tái)tomcat里面webapps目錄中創(chuàng)建web項(xiàng)目edu,在edu文件夾中創(chuàng)建頁(yè)面a.html

第一步: 在http塊中添加upstream指令定義一組服務(wù)器,新增一個(gè)server塊采用負(fù)載均衡的規(guī)則將請(qǐng)求轉(zhuǎn)發(fā)到集群中的某一臺(tái)服務(wù)器

第二步: 訪問http://192.168.77.130/edu/a.html發(fā)現(xiàn)結(jié)果在8080和8081兩個(gè)服務(wù)之間切換

http {                                        
    include       mime.types;                    
    default_type  application/octet-stream;  
    sendfile        on;  
    keepalive_timeout  65;  
    # upstream指令可以定義一組服務(wù)器
    upstream targetServer{
    	# 默認(rèn)使用輪詢的方式實(shí)現(xiàn)負(fù)載均衡
        server 192.168.17.129:8080;
        server 192.168.17.129:8081;
    }
    server {
    	# 監(jiān)聽的端口
        listen       80;
        # nginx服務(wù)的地址
        server_name  localhost;
        location / {
        	# 添加定義的服務(wù)地址,使用定義好的targetServer
            proxy_pass http://targetServe 
        }
    }
}

動(dòng)靜分離

Nginx動(dòng)靜分離不能理解成只是單純的把動(dòng)態(tài)頁(yè)面和靜態(tài)頁(yè)面物理分離,嚴(yán)格意義上說應(yīng)該是把動(dòng)態(tài)請(qǐng)求跟靜態(tài)請(qǐng)求分開

動(dòng)靜分離從目前實(shí)現(xiàn)角度來講大致分為兩種

  • 第一種方案也是目前主流推崇的方案就是把靜態(tài)文件獨(dú)立成單獨(dú)的域名然后放在獨(dú)立的服務(wù)器上,如使用Nginx服務(wù)器處理靜態(tài)頁(yè)面,Tomcat服務(wù)器處理動(dòng)態(tài)頁(yè)面
  • 第二種方案就是把動(dòng)態(tài)跟靜態(tài)文件混合在一起發(fā)布,通過nginx來分開動(dòng)態(tài)請(qǐng)求和靜態(tài)請(qǐng)求,具體就是通過location指定不同的后綴名實(shí)現(xiàn)不同的請(qǐng)求轉(zhuǎn)發(fā)

對(duì)于不經(jīng)常變動(dòng)的資源可以使用Expires參數(shù)給一個(gè)資源(請(qǐng)求)設(shè)定一個(gè)過期時(shí)間,這樣瀏覽器每次訪問的時(shí)候可以走緩存的數(shù)據(jù),減少瀏覽器與服務(wù)器之前的請(qǐng)求

  • 用戶在第一次訪問服務(wù)器后瀏覽器中會(huì)將請(qǐng)求對(duì)應(yīng)的資源進(jìn)行緩存,下次訪問的時(shí)候如果緩存的資源沒有過期且服務(wù)端對(duì)應(yīng)的資源也沒有更新就直接走緩存
  • 滿足則返回瀏覽器緩存的數(shù)據(jù)并返回狀態(tài)碼304,不滿足則需要從服務(wù)器重新下載數(shù)據(jù)并返回狀態(tài)碼200

nginx代理靜態(tài)資源,Nginx,負(fù)載均衡,nginx

第一步: 在liunx系統(tǒng)中/data目錄下準(zhǔn)備靜態(tài)資源,如www/a.htmlimage/1.png

第二步: 在nginx的配置文件的location塊配置要訪問的靜態(tài)資源路徑

  • autoindex on: 在訪問靜態(tài)資源目錄時(shí),能夠顯示目錄里面的內(nèi)容
  • expire: 設(shè)置緩存過期時(shí)間
server {
    	# 監(jiān)聽的端口
        listen       80;
        # nginx的服務(wù)地址
        server_name  192.168.77.129;
        # http://192.168.77.129/www/a.html
        location /www/ {
        	root   /data/;
        	index  index.html index.htm;
        # http://192.168.77.129/image/
        location /image/ {
            root   /data/;
            # 顯示image目錄的內(nèi)容
            autoindex on;
        }
}     

反向代理一臺(tái)服務(wù)器

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

nginx代理靜態(tài)資源,Nginx,負(fù)載均衡,nginx

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

192.168.17.129 www.123.com

第二步: 在nginx.conf配置文件中添加proxy_pass屬性進(jìn)行請(qǐng)求轉(zhuǎn)發(fā)的配置(反向代理配置)

http {                                        
    include       mime.types;                    
    default_type  application/octet-stream;  
    sendfile        on;  
    keepalive_timeout  65;  
    # 在http塊中新增一個(gè)server塊,用來將請(qǐng)求轉(zhuǎn)發(fā)
    server {
        # 監(jiān)聽80端口
        listen       80;
        server_name  192.168.17.129;
        location / {
            # 反向代理配置,將請(qǐng)求轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器
            proxy_pass http://127.0.0.1:8080; 
        }
    }
}

反向代理多臺(tái)服務(wù)器

使用nginx反向代理(nginx監(jiān)聽端口為9001),根據(jù)訪問的路徑跳轉(zhuǎn)到不同端口的服務(wù)中,注意放行8080/8081/9001對(duì)外訪問的端口

第一步: 準(zhǔn)備兩個(gè)文件夾安裝兩個(gè)tomcat服務(wù)器,修改服務(wù)器的conf/erver.xml配置文件,修改它們的端口號(hào)防止沖突

<Server port ="8015" shutdown="SHYTDOWN" >
<Connector port="8080" protocol="HTTP/1.1">
<Connector port="8019" protocol="AJP/1.3">

第二步: 在兩個(gè)Tomcat的webapps目錄下分布創(chuàng)建web項(xiàng)目edu和vod并存放對(duì)應(yīng)的測(cè)試文件a.html

<!--edu/a.html-->
<h1>8080<h1>
<!--vod/a.html-->
<h1>8081<h1>

第三步: 在http塊中添加一個(gè)新的server塊并添加兩個(gè)location塊文章來源地址http://www.zghlxwxcb.cn/news/detail-764911.html

  • 訪問http://192.168.17.129:9001/edu/a.html直接跳轉(zhuǎn)到http://127.0.0.1:8080/edu/a.html
  • 訪問http://192.168.17.129:9001/vod/a.html直接跳轉(zhuǎn)到http://127.0.0.1:8080/vod/a.html
http {                                        
    include       mime.types;                    
    default_type  application/octet-stream;  
    sendfile        on;  
    keepalive_timeout  65;  
    # 在http塊中新增一個(gè)server塊,用來將請(qǐng)求轉(zhuǎn)發(fā)
    server {
        # 監(jiān)聽9001端口
        listen       9001;
        server_name  192.168.17.129;
        location ~ /edu/ {
            # 反向代理配置,將請(qǐng)求轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器
            proxy_pass http://127.0.0.1:8080; 
        }
        location ~ /vod/ {
            # 反向代理配置,將請(qǐng)求轉(zhuǎn)發(fā)到目標(biāo)服務(wù)器
            proxy_pass http://127.0.0.1:8081; 
        }
    }
}

配置高可用

到了這里,關(guān)于03Nginx的靜態(tài)資源部署,反向代理,負(fù)載均衡,動(dòng)靜分離的配置的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Nginx 反向代理負(fù)載均衡

    Nginx 反向代理負(fù)載均衡

    Nginx 反向代理負(fù)載均衡 普通的負(fù)載均衡軟件,如 LVS,其實(shí)現(xiàn)的功能只是對(duì)請(qǐng)求數(shù)據(jù)包的轉(zhuǎn)發(fā)、傳遞,從負(fù)載均衡下的節(jié)點(diǎn)服務(wù)器來看,接收到的請(qǐng)求還是來自訪問負(fù)載均衡器的客戶端的真實(shí)用戶;而反向代理就不一樣了,反向代理服務(wù)器在接收訪問用戶請(qǐng)求后,會(huì)代理用戶

    2024年02月03日
    瀏覽(30)
  • nginx負(fù)載均衡+反向代理

    nginx負(fù)載均衡+反向代理

    最近業(yè)務(wù)上遇到一個(gè)需求,其它系統(tǒng)因業(yè)務(wù)校驗(yàn)需要調(diào)用上級(jí)系統(tǒng)進(jìn)行數(shù)據(jù)發(fā)送或校驗(yàn),如果上級(jí)系統(tǒng)停機(jī)維護(hù),其它下級(jí)系統(tǒng)發(fā)送的http通訊會(huì)丟失,還要一次次補(bǔ)發(fā)數(shù)據(jù),耗費(fèi)人工與時(shí)間。使用nginx+反向代理解決了部分需求。 目標(biāo):當(dāng)服務(wù)A停機(jī)維護(hù),其它系統(tǒng)會(huì)調(diào)用服務(wù)

    2024年02月08日
    瀏覽(24)
  • Nginx反向代理與負(fù)載均衡

    Nginx反向代理與負(fù)載均衡

    代理是在服務(wù)器和客戶端之間假設(shè)的一層服務(wù)器,代理將接收客戶端的請(qǐng)求并將它轉(zhuǎn)發(fā)給服務(wù)器,然后將服務(wù)端的響應(yīng)轉(zhuǎn)發(fā)給客戶端。 不管是正向代理還是反向代理,實(shí)現(xiàn)的都是上面的功能。 正向代理,意思是一個(gè)位于客戶端和原始服務(wù)器(origin server)之間的服務(wù)器,為了從

    2023年04月26日
    瀏覽(25)
  • Nginx反向代理和負(fù)載均衡

    Nginx反向代理和負(fù)載均衡

    ` 正向代理 反向代理 七層反向代理: (基于http協(xié)議) http { upstream 服務(wù)器組名稱 { server IP1:PORT [weight=1 …]; server IP2:PORT; … 調(diào)度算法(rr輪詢/加權(quán)輪詢,least_conn最小連接,ip_hash,url_hash,fair); } server { location ~ … { proxy_pass http://服務(wù)器組名稱; proxy_set_header HosT $host; proxy_set_he

    2024年02月03日
    瀏覽(64)
  • Nginx的反向代理和負(fù)載均衡

    Nginx的反向代理和負(fù)載均衡

    Nginx作為面試中的大…小頭目,自然是不能忽視的,而以下兩點(diǎn)就是它能成為面試中頭目的招牌。 反向代理和負(fù)載均衡 在此之前,我們先對(duì)Nginx做一個(gè)簡(jiǎn)單的了解 Nginx (engine x) 是一個(gè)高性能的HTTP和反向代理web服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù)。因它的穩(wěn)定性、豐富的功能

    2024年02月08日
    瀏覽(22)
  • 06、Nginx反向代理與負(fù)載均衡

    06、Nginx反向代理與負(fù)載均衡

    反向代理 : 這種代理方式叫做,隧道代理。有性能瓶頸,因?yàn)樗械臄?shù)據(jù)都經(jīng)過Nginx,所以Nginx服務(wù)器的性能至關(guān)重要 負(fù)載均衡 : 把請(qǐng)求,按照一定算法規(guī)則,分配給多臺(tái)業(yè)務(wù)服務(wù)器(即使其中一個(gè)壞了/維護(hù)升級(jí),還有其他服務(wù)器可以繼續(xù)提供服務(wù)) 反向代理+負(fù)載均衡:

    2024年02月12日
    瀏覽(26)
  • 【nginx實(shí)戰(zhàn)】nginx正向代理、反向代理、由反向代理實(shí)現(xiàn)的負(fù)載均衡、故障轉(zhuǎn)移詳解

    【nginx實(shí)戰(zhàn)】nginx正向代理、反向代理、由反向代理實(shí)現(xiàn)的負(fù)載均衡、故障轉(zhuǎn)移詳解

    本文將要討論以下內(nèi)容 正向代理與反向代理的基本概念 Nginx正向代理服務(wù)的配置指令、Nginx反向代理服務(wù)的配置指令 Nginx反向代理服務(wù)器的應(yīng)用——負(fù)載均衡、故障轉(zhuǎn)移 案例分析 ? 正向代理的概念 局域網(wǎng)內(nèi)的機(jī)器借助代理服務(wù)訪問局域網(wǎng)外的網(wǎng)站,此代理服務(wù)器提供的服務(wù)

    2024年01月24日
    瀏覽(31)
  • Nginx【反向代理負(fù)載均衡動(dòng)靜分離】--上

    Nginx【反向代理負(fù)載均衡動(dòng)靜分離】--上

    需求1: 訪問不同微服務(wù) 示意圖 需求2: 輪詢?cè)L問服務(wù) 示意圖 解決方案: Nginx 反向代理 負(fù)載均衡 動(dòng)靜分離 高可用集群 Nginx 在分布式微服務(wù)架構(gòu)的位置 Nginx 是什么? 能干什么? 是什么:Nginx (“engine x”) 是一個(gè)高性能的HTTP 和反向代理WEB 服務(wù)器 能干什么:反向代理負(fù)載均衡動(dòng)靜

    2024年02月08日
    瀏覽(28)
  • nginx反向代理及負(fù)載均衡的實(shí)現(xiàn)

    目錄 1.nginx反向代理 2.nginx負(fù)載均衡 3.nginx反向代理及負(fù)載均衡實(shí)現(xiàn) nginx反向代理 4臺(tái)主機(jī)都需要的操作: 兩臺(tái)服務(wù)器操作: 兩臺(tái)主機(jī)服務(wù)器進(jìn)行測(cè)試; nginx負(fù)載均衡配置 4.nginx配置其他參數(shù) 多虛擬機(jī)訪問 后端服務(wù)器日志中需要記錄客戶端真實(shí)ip nginx設(shè)置不同的url訪問不同頁(yè)面

    2024年02月14日
    瀏覽(27)
  • Nginx反向代理實(shí)現(xiàn)負(fù)載均衡webshell

    Nginx反向代理實(shí)現(xiàn)負(fù)載均衡webshell

    目錄 本實(shí)驗(yàn)所用的環(huán)境: 問題一:由于nginx采用的反向代理是輪詢的方式,所以上傳文件必須在兩臺(tái)后端服務(wù)器的相同位置上傳相同的文件 問題二:我們?cè)趫?zhí)行命令時(shí),無法知道下次的請(qǐng)求交給哪臺(tái)機(jī)器去執(zhí)行我們?cè)趫?zhí)行hostname -i查看當(dāng)前執(zhí)行機(jī)器的IP時(shí),可以看到IP地址一

    2024年02月04日
    瀏覽(34)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包