bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

nginx動態代理及負載均衡的學習之旅-創新互聯

成都創新互聯堅信:善待客戶,將會成為終身客戶。我們能堅持多年,是因為我們一直可值得信賴。我們從不忽悠初訪客戶,我們用心做好本職工作,不忘初心,方得始終。10多年網站建設經驗成都創新互聯是成都老牌網站營銷服務商,為您提供成都網站建設、做網站、網站設計、成都h5網站建設、網站制作、高端網站設計重慶小程序開發服務,給眾多知名企業提供過好品質的建站服務。

下文給大家帶來nginx動態代理及負載均衡的學習之旅,希望能夠給大家在實際運用中帶來一定的幫助,負載均衡涉及的東西比較多,理論也不多,網上有很多書籍,今天我們就用創新互聯建站在行業內累計的經驗來做一個解答。

1.正向代理與反向代理的區別?

正向代理:是一個位于客戶端和原始云服務器(origin server)之間的服務器,為了從原始服務器取得內容,客戶端向代理發送一個請求并指定目標(原始服務器),然后代理向原始服務器轉交請求并將獲得的內容返回給客戶端。正向代理的典型用途為在防火墻內的局域網客戶端提供訪問Internet的途徑.

nginx動態代理及負載均衡的學習之旅

反向代理:反向代理是代理服務器的一種,服務器根據客戶端的請求,從其關聯的一組或多組后端服務器(如Web服務器)上獲取資源,然后再將這些資源返回給客戶端,客戶端只會得知反向代理的IP地址或者域名,而不知道在代理服務器后面的服務器簇的存在.

nginx動態代理及負載均衡的學習之旅

2.nginx概述

Nginx是一款優秀的反向代理服務器程序,能夠為若干臺服務器提供反向代理服務,一方面為客戶端提供的統一的訪問地址,另一方面為后臺多個服務器提供了負載均衡的能力。Nginx是目前最主流的反向代理服務器,能夠提供可靠的負載均衡、動靜分離的能力。
        a. 下載地址
            http://nginx.org/en/download.html
        b. 安裝
            將下載好的安裝包解壓到一個沒有中文沒有空格的目錄下即可。
        c. windows下常用命令
            驗證配置是否正確: nginx -t
            查看Nginx的版本號:nginx -V
            啟動Nginx:start nginx
            快速停止或關閉Nginx:nginx -s stop
            正常停止或關閉Nginx:nginx -s quit
            配置文件修改重裝載命令:nginx -s reload
        d. 配置
            nginx的工作是基于[conf/nginx.conf]配置文件來進行的。
            nginx.conf的配置結構:
                http{ #代表處理http請求
                         #配置一個虛擬服務器
                        server{
                                #此虛擬服務器接收對80端口的訪問
                                listen 80; 
                                #此虛擬服務器接收對localhost主機名的訪問
                                server_name localhost; 
                                #當訪問/user資源時由此配置處理
                                location /user{
                                        規則
                                }
                                #當訪問/order資源時由此配置處理
                                location /order{
                                        規則
                                }
                                ...
                        }

                        #其他Server配置
                        server ...
                        ...
                }

3.nginx案例實現請求轉發

通過Nginx實現請求轉發,通過配置nginx.conf轉發策略,使得本來訪問tomcate:8080端口轉交由訪問nginx:8088端口
        當客戶端訪問http://www.aaa.com時,由nginx轉發給http://127.0.0.1:8080端口進行處理
        配置hosts文件
            127.0.0.1 www.aaa.com
        在nginx.conf中配置
            http{
                    #為nginx配置一個虛擬服務器,
                    server {
                            #監聽本機8088端口
                            listen 8088;
                            #接收對www.aaa.com主機名的訪問
                            server_name www.aaa.com;
                            #對/即任意路徑的訪問進行處理
                            location / {
                                    #轉發到指定地址,tomcate訪問地址
                                    proxy_pass http://127.0.0.1:8080;
                            } 
                            #可以配置多個location
                            ...
                    }
                    #可以配置多個server
                    ...
            }
        啟動 tomcat
            startup.bat
        啟動nginx
            start nginx

nginx動態代理及負載均衡的學習之旅

4. location路徑配置和匹配規則

       a. location路徑的寫法
        在配置虛擬服務器時,可以配置多個location,指定不同路徑采用不同的處理方案,location支持多種寫法,規則如下:
        1.  =   =/aaa/1.jpg 路徑嚴格匹配,路徑必須一模一樣才會匹配到
        2.  ^~  ^~/aaa  只要是指定路徑開頭的路徑都可以匹配
        3.  ~   ~.png$  區分大小寫按正則匹配路徑
        4.  ~*  ~*.png$ 不區分大小寫按正則匹配路徑
        5. /    /   通用匹配,所有路徑都可以匹配到
        b. location路徑配置的優先級
        由于location的路徑配置非常靈活,所有有可能一個路徑被多個location所匹配,此時按照如下規則判斷匹配優先級:
            ? 首先匹配 =
            ? 其次匹配 ^~
            ? 其次是按文件中順序的正則匹配
            ? 最后是交給 / 通用匹配
            ? 當有匹配成功時候,停止匹配,按當前匹配規則處理請求
            ----總的規律是,精度越高優先級越高
        案例:
        location = / {
                     #規則A
                            }
        location = /login {
                    #規則B
                            }
        location ^~ /static/ {
                     #規則C
                            }
        location ~ \.(gif|jpg|png|js|css)$ {
                    #規則D
                            }
        location ~* \.png$ {
                             #規則E
                        }
        location / {
                             #規則F
                        }
     訪問根目錄 /, 比如 http://localhost/ 將匹配規則 A
     訪問 http://localhost/login 將匹配規則 B
     http://localhost/register 則匹配規則 F
     訪問 http://localhost/static/a.html 將匹配規則 C
     訪問 http://localhost/a.gif, http://localhost/b.jpg 將匹配規則 D和規則 E,但是規則 D 順序優先,規則 E不起作用
     http://localhost/static/c.png則優先匹配到規則 C
     訪問 http://localhost/a.PNG 則匹配規則 E,而不會匹配規則 D,因為規則 E 不區分大小寫
     訪問 http://localhost/category/id/1111 則最終匹配到規則 F

5. Ngnix的負載均衡策略

   nginx在分發資源到后端服務器時,如何分配請求是可以配置的,稱之為nginx的負載均衡策略。
        輪詢  默認不配置就是輪詢   連接請求輪流分配給后端服務器
        http{ 
                            upstream sampleapp { 
                            server <<dns entry or IP Address(optional with port)>>; 
                            server <<another dns entry or IP Address(optional with port)>>; 
                            } 
                            .... 
                            server{ 
                                    listen 80; 
                                    ... 
                                    location / { 
                                            proxy_pass http://sampleapp; 
                            }  
                    } 
        ip哈希    ip_hash;    abs(客戶端ip.hash())%服務器數量,根據余數決定連接請求去往哪個服務器
        http{ 
                            upstream sampleapp { 
                            ip_hash; 
                            server <<dns entry or IP Address(optional with port)>>; 
                            server <<another dns entry or IP Address(optional with port)>>; 
                            } 
                            .... 
                            server{ 
                                    listen 80; 
                                    ... 
                                    location / { 
                                    proxy_pass http://sampleapp; 
                            }  
                    } 
        最少連接    least_conn; 將連接請求分配給目前連接數最少的服務器
        http{ 
                            upstream sampleapp { 
                            least_conn; 
                            server <<dns entry or IP Address(optional with port)>>; 
                            server <<another dns entry or IP Address(optional with port)>>; 
                            } 
                            .... 
                            server{ 
                                    listen 80; 
                                    ... 
                                    location / { 
                                    proxy_pass http://sampleapp; 
                            }  
                    } 
        基于權重    直接在地址后配置weight=x    根據權重進行分配,權重值越大,被分配的連接越多。可以直接配置為down,則不再分配連接。    
        http{ 
                            upstream sampleapp { 
                                    server <<dns entry or IP Address(optional with port)>> weight=2; 
                                    server <<another dns entry or IP Address(optional with port)>> weight=5; 
                                    server <<another dns entry or IP Address(optional with port)>> down;
                            } 
                            .... 
                            server{ 
                                    listen 80; 
                                    ... 
                                    location / { 
                                    proxy_pass http://sampleapp; 
                            } 
                    }

 7. Nginx的動靜分離實現

       a. 動靜分離原理
        動 --> 動態資源  --> servlet jsp --> 程序 
        靜 --> 靜態資源 --> jpg mp3 mp4 html css js --> 文件 
        tomcat能夠處理動態和靜態資源,但本質上是為處理動態資源而設計的服務器,過多靜態資源交由tomcat管理會降低tomcat處理動態資源的能力,得不償失。

        nginx本身無法處理動態資源,但可以處理靜態資源,而且性能優良。

        因此可以將靜態資源和動態資源拆分,將靜態資源交由ngin處理,動態資源仍由tomcat處理,從而解放了tomcat對動態資源的處理能力,整體上實現動靜分離,提升了效率。
        b. 動靜分離實現
        配置方式:
            server {
                    listen 8088;
                    server_name www.aaa.com;
                    location / {
                            #root可以指向nginx服務器中的本地磁盤地址
                            #靜態文件就放置在這個磁盤地址中
                            #之后對server中資源的訪問會被轉換到對本地磁盤資源的訪問
                                                #www.aaa.com/aaa/bbb/1.html-->d://html/aaa/bbb/1.html
                            root D://html;
                            #默認訪問的首頁配置
                            index index.html;
                    }

           }

看了以上關于nginx動態代理及負載均衡的學習之旅,如果大家還有什么地方需要了解的可以在創新互聯建站行業資訊里查找自己感興趣的或者找我們的專業技術工程師解答的,創新互聯建站技術工程師在行業內擁有十幾年的經驗了。


創新互聯www.cdcxhl.cn,專業提供香港、美國云服務器,動態BGP最優骨干路由自動選擇,持續穩定高效的網絡助力業務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統配攻擊溯源,準確進行流量調度,確保服務器高可用性。佳節活動現已開啟,新人活動云服務器買多久送多久。

本文標題:nginx動態代理及負載均衡的學習之旅-創新互聯
標題網址:http://vcdvsql.cn/article42/djggec.html

成都網站建設公司_創新互聯,為您提供網站排名網頁設計公司搜索引擎優化App開發全網營銷推廣虛擬主機

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都app開發公司