色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何徹底搞懂Nginx知識網結構

Linux愛好者 ? 來源:51CTO技術棧 ? 作者:51CTO技術棧 ? 2021-05-03 14:15 ? 次閱讀

1.Nginx知識網結構圖

14909dba-a534-11eb-aece-12bb97331649.png

Nginx是一個高性能的HTTP和反向代理服務器,特點是占用內存少,并發能力強,事實上nginx的并發能力確實在同類型的網頁服務器中表現較好

nginx專為性能優化而開發,性能是其最重要的要求,十分注重效率,有報告nginx能支持高達50000個并發連接數

1.1反向代理

正向代理

正向代理:局域網中的電腦用戶想要直接訪問網絡是不可行的,只能通過代理服務器來訪問,這種代理服務就被稱為正向代理。

149957de-a534-11eb-aece-12bb97331649.png

反向代理

反向代理:客戶端無法感知代理,因為客戶端訪問網絡不需要配置,只要把請求發送到反向代理服務器,由反向代理服務器去選擇目標服務器獲取數據,然后再返回到客戶端,此時反向代理服務器和目標服務器對外就是一個服務器,暴露的是代理服務器地址,隱藏了真實服務器IP地址

14d0a658-a534-11eb-aece-12bb97331649.png

1.2負載均衡

客戶端發送多個請求到服務器,服務器處理請求,有一些可能要與數據庫進行狡猾,服務器處理完畢之后,再將結果返回給客戶端

普通請求和響應過程

14dcf8b8-a534-11eb-aece-12bb97331649.png

但是隨著信息數量增長,訪問量和數據量飛速增長,普通架構無法滿足現在的需求

我們首先想到的是升級服務器配置,可以由于摩爾定律的日益失效,單純從硬件提升性能已經逐漸不可取了,怎么解決這種需求呢?

我們可以增加服務器的數量,構建集群,將請求分發到各個服務器上,將原來請求集中到單個服務器的情況改為請求分發到多個服務器,也就是我們說的負載均衡

圖解負載均衡

14ee6314-a534-11eb-aece-12bb97331649.png

假設有15個請求發送到代理服務器,那么由代理服務器根據服務器數量,平均分配,每個服務器處理5個請求,這個過程就叫做負載均衡

1.3動靜分離

為了加快網站的解析速度,可以把動態頁面和靜態頁面交給不同的服務器來解析,加快解析的速度,降低由單個服務器的壓力

動靜分離之前的狀態

150163ba-a534-11eb-aece-12bb97331649.png

動靜分離之后

150beaa6-a534-11eb-aece-12bb97331649.png

2. nginx如何在linux安裝

3. nginx常用命令

查看版本

。/nginx -v

啟動

。/nginx

關閉(有兩種方式,推薦使用 。/nginx -s quit)

。/nginx -s stop

。/nginx -s quit

重新加載nginx配置

。/nginx -s reload

4.nginx的配置文件

配置文件分三部分組成

全局塊

從配置文件開始到events塊之間,主要是設置一些影響nginx服務器整體運行的配置指令

并發處理服務的配置,值越大,可以支持的并發處理量越多,但是會受到硬件、軟件等設備的制約

152d20d6-a534-11eb-aece-12bb97331649.png

events塊

影響nginx服務器與用戶的網絡連接,常用的設置包括是否開啟對多workprocess下的網絡連接進行序列化,是否允許同時接收多個網絡連接等等

支持的最大連接數

153adf46-a534-11eb-aece-12bb97331649.png

http塊

諸如反向代理和負載均衡都在此配置

location指令說明

該語法用來匹配url,語法如下

location[ = | ~ | ~* | ^~] url{

}

=:用于不含正則表達式的url前,要求字符串與url嚴格匹配,匹配成功就停止向下搜索并處理請求

~:用于表示url包含正則表達式,并且區分大小寫。

~*:用于表示url包含正則表達式,并且不區分大瞎寫

^~:用于不含正則表達式的url前,要求ngin服務器找到表示url和字符串匹配度最高的location后,立即使用此location處理請求,而不再匹配

如果有url包含正則表達式,不需要有~開頭標識

4.1 反向代理實戰

配置反向代理

目的:在瀏覽器地址欄輸入地址www.123.com跳轉linux系統tomcat主頁面

具體實現

先配置tomcat:因為比較簡單,此處不再贅敘

并在windows訪問

15437372-a534-11eb-aece-12bb97331649.png

具體流程

1551e5b0-a534-11eb-aece-12bb97331649.png

修改之前

配置

1564245a-a534-11eb-aece-12bb97331649.png

再次訪問

反向代理2

1.目標

訪問http://192.168.25.132:9001/edu/ 直接跳轉到192.168.25.132:8080

訪問http://192.168.25.132:9001/vod/ 直接跳轉到192.168.25.132:8081

2.準備

配置兩個tomcat,端口分別為8080和8081,都可以訪問,端口修改配置文件即可。

15ef2316-a534-11eb-aece-12bb97331649.png

新建文件內容分別添加8080!!!和8081!!!

15fd1048-a534-11eb-aece-12bb97331649.png

16083aea-a534-11eb-aece-12bb97331649.png

響應如下

1612b178-a534-11eb-aece-12bb97331649.png

161b3c1c-a534-11eb-aece-12bb97331649.png

3.具體配置

16248ce0-a534-11eb-aece-12bb97331649.png

重新加載nginx

。/nginx -s reload

訪問

162dfdfc-a534-11eb-aece-12bb97331649.png

162dfdfc-a534-11eb-aece-12bb97331649.png

實現了同一個端口代理,通過edu和vod路徑的切換顯示不同的頁面

4.2 反向代理小結

第一個例子:

瀏覽器訪問www.123.com,由host文件解析

出服務器ip地址

192.168.25.132 www.123.com

然后默認訪問80端口,而通過nginx監聽80端口代理到本地的8080端口上,從而實現了訪問www.123.com,最終轉發到tomcat 8080上去

第二個例子:

訪問http://192.168.25.132:9001/edu/ 直接跳轉到192.168.25.132:8080

訪問http://192.168.25.132:9001/vod/ 直接跳轉到192.168.25.132:8081

實際上就是通過nginx監聽9001端口,然后通過正則表達式選擇轉發到8080還是8081的tomcat上去

4.3 負載均衡實戰

1.修改nginx.conf

16657930-a534-11eb-aece-12bb97331649.png

167191a2-a534-11eb-aece-12bb97331649.png

2.重啟nginx

。/nginx -s reload

3.在8081的tomcat的webapps文件夾下新建edu文件夾和a.html文件,填寫內容為8081!!!!

4.在地址欄回車,就會分發到不同的tomcat服務器上

168da2fc-a534-11eb-aece-12bb97331649.png

16968b92-a534-11eb-aece-12bb97331649.png

3.負載均衡方式

輪詢(默認)

weight,代表權,權越高優先級越高

16b1f828-a534-11eb-aece-12bb97331649.png

fair,按后端服務器的響應時間來分配請求,相應時間短的優先分配

16ba08ce-a534-11eb-aece-12bb97331649.png

ip_hash,每個請求按照訪問ip的hash結果分配,這樣每一個訪客固定的訪問一個后端服務器,可以解決session 的問題

16c2b834-a534-11eb-aece-12bb97331649.png

4.4 動靜分離實戰

什么是動靜分離

把動態請求和靜態請求分開,不是講動態頁面和靜態頁面物理分離,可以理解為nginx處理靜態頁面,tomcat處理動態頁面

動靜分離大致分為兩種:一、純粹將靜態文件獨立成單獨域名放在獨立的服務器上,也是目前主流方案;二、將動態跟靜態文件混合在一起發布,通過nginx分開

動靜分離圖析

16d581ee-a534-11eb-aece-12bb97331649.png

實戰準備

準備靜態文件

170365aa-a534-11eb-aece-12bb97331649.png

1725b434-a534-11eb-aece-12bb97331649.png

配置nginx

172eedec-a534-11eb-aece-12bb97331649.png

5.nginx高可用

如果nginx出現問題

173923d4-a534-11eb-aece-12bb97331649.png

解決辦法

1745d700-a534-11eb-aece-12bb97331649.png

前期準備

兩臺nginx服務器

安裝keepalived

虛擬ip

5.1安裝keepalived

[root@192 usr]# yum install keepalived -y

[root@192 usr]# rpm -q -a keepalived

keepalived-1.3.5-16.el7.x86_64

修改配置文件

[root@192 keepalived]# cd /etc/keepalived

[root@192 keepalived]# vi keepalived.conf

分別將如下配置文件復制粘貼,覆蓋掉keepalived.conf

虛擬ip為192.168.25.50

對應主機ip需要修改的是

smtp_server 192.168.25.147(主)smtp_server 192.168.25.147(備)

state MASTER(主) state BACKUP(備)

global_defs {

notification_email {

acassen@firewall.loc

failover@firewall.loc

sysadmin@firewall.loc

}

notification_email_from Alexandre.Cassen@firewall.loc

smtp_server 192.168.25.147

smtp_connect_timeout 30

router_id LVS_DEVEL # 訪問的主機地址

}

vrrp_script chk_nginx {

script “/usr/local/src/nginx_check.sh” # 檢測文件的地址

interval 2 # 檢測腳本執行的間隔

weight 2 # 權重

}

vrrp_instance VI_1 {

state BACKUP # 主機MASTER、備機BACKUP

interface ens33 # 網卡

virtual_router_id 51 # 同一組需一致

priority 90 # 訪問優先級,主機值較大,備機較小

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.25.50 # 虛擬ip

}

}

啟動

[root@192 sbin]# systemctl start keepalived.service

176fc9b6-a534-11eb-aece-12bb97331649.png

訪問虛擬ip成功

1785b38e-a534-11eb-aece-12bb97331649.png

關閉主機147的nginx和keepalived,發現仍然可以訪問

6.原理解析

17bc68ac-a534-11eb-aece-12bb97331649.png

如下圖,就是啟動了一個master,一個worker,master是管理員,worker是具體工作的進程

17c7a7b2-a534-11eb-aece-12bb97331649.png

worker如何工作

17d218b4-a534-11eb-aece-12bb97331649.png

小結

worker數應該和CPU數相等

一個master多個worker可以使用熱部署,同時worker是獨立的,一個掛了不會影響其他的

原文標題:搞懂Nginx,一篇文章就夠了

文章出處:【微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10901

    瀏覽量

    212663
  • nginx
    +關注

    關注

    0

    文章

    154

    瀏覽量

    12208

原文標題:搞懂Nginx,一篇文章就夠了

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    華為 FlexusX 與 Docker+Nginx 的高效整合之路

    前言 華為 FlexusX 攜手 Docker+Nginx,高效整合,云端性能再升級!FlexusX 服務器,依托華為強大的技術實力,為 Docker 容器與 Nginx 服務器提供了完美的運行環境
    的頭像 發表于 01-23 17:55 ?56次閱讀
    華為 FlexusX 與 Docker+<b class='flag-5'>Nginx</b> 的高效整合之路

    EulerOS+Nginx+MySQL 部署 GLPI 資產管理系統

    安全保障,幫助企業實現資源的按需擴展,提升業務響應速度,確保服務的連續性和數據的安全性。??使用的操作系統鏡像版本如下: ??檢查 Nginx 是否部署成功,如果返回如下信息表示 Nginx 安裝成功: ??接下來就可以在瀏覽器中訪問https://124.70.44
    的頭像 發表于 01-03 09:28 ?175次閱讀
    EulerOS+<b class='flag-5'>Nginx</b>+MySQL 部署 GLPI 資產管理系統

    玩轉Nginx日志管理:高效排查問題的終極指南

    Nginx日志對于統計、系統服務排錯很有用。Nginx日志主要分為兩種:access_log(訪問日志)和error_log(錯誤日志)。通過訪問日志我們可以得到用戶的IP地址、瀏覽器的信息,請求
    的頭像 發表于 12-30 13:50 ?159次閱讀

    nginx+lua+redis實現灰度發布

    作者:馬仁喜 前言: 授人以魚不如授人以漁 .先學會用,在學原理,在學創造,可能一輩子用不到這種能力,但是不能不具備這種能力。這篇文章主要是沉淀使用nginx+lua+redis實現灰度,當我們具備
    的頭像 發表于 12-17 10:01 ?121次閱讀

    Nginx日常運維方法Linux版

    1,安裝? 下載RPM:wget http://nginx.org/packages/centos/7/x86_64/RPMS/nginx
    的頭像 發表于 12-06 16:38 ?203次閱讀
    <b class='flag-5'>Nginx</b>日常運維方法Linux版

    「服務器」Nginx Proxy Manager申請cloudflare泛域名

    一概述NginxProxyManager是一個基于Nginx的反向代理管理工具,它提供了一個用戶友好的Web界面,方便用戶管理和配置Nginx反向代理。主要功能包括:簡易的用戶界面:通過圖形界面
    的頭像 發表于 12-06 01:03 ?243次閱讀
    「服務器」<b class='flag-5'>Nginx</b> Proxy Manager申請cloudflare泛域名

    詳解nginx中的正則表達式

    前言,我這里驗證的nginx-v1.23.2單機環境下的nginx中的正則表達式、location路徑匹配規則和優先級。
    的頭像 發表于 12-03 09:59 ?325次閱讀
    詳解<b class='flag-5'>nginx</b>中的正則表達式

    確保網站無縫運行:Keepalived高可用與Nginx集成實戰

    nginx負載均衡機高可用 腦裂 腦裂產生的原因 腦裂的常見解決方案 對腦裂進行監控 keepalived簡介 keepalived官 Keepalived 軟件起初是專為LVS負載均衡軟件設計
    的頭像 發表于 11-27 09:08 ?633次閱讀
    確保網站無縫運行:Keepalived高可用與<b class='flag-5'>Nginx</b>集成實戰

    nginx隱藏版本號與WEB服務器信息

    nginx不僅可以隱藏版本信息,還支持自定義web服務器信息 先看看最終的隱藏結果吧 具體怎么實現呢,其實也很簡單,請往下看 1 官網下載最新穩定版 wget http://nginx
    的頭像 發表于 11-22 10:25 ?219次閱讀
    <b class='flag-5'>nginx</b>隱藏版本號與WEB服務器信息

    nginx負載均衡配置介紹

    目錄 nginx負載均衡 nginx負載均衡介紹 反向代理與負載均衡 nginx負載均衡配置 Keepalived高可用nginx負載均衡器 修改Web服務器的默認主頁 開啟
    的頭像 發表于 11-10 13:39 ?291次閱讀
    <b class='flag-5'>nginx</b>負載均衡配置介紹

    nginx中的正則表達式和location路徑匹配指南

    前言,我這里驗證的nginx-v1.23.2單機環境下的nginx中的正則表達式、location路徑匹配規則和優先級。
    的頭像 發表于 09-29 16:02 ?918次閱讀
    <b class='flag-5'>nginx</b>中的正則表達式和location路徑匹配指南

    Jtti:美國VPS開啟nginx狀態監控,查看web服務器的并發連接數

    Nginx的ngx_http_stub_status_module提供能夠獲取Nginx自上次啟動以來的工作狀態的功能。如果需要啟用此功能的話,需要在編譯的過程中添加如下參數
    的頭像 發表于 08-26 15:42 ?326次閱讀

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發表于 07-11 17:13

    nginx重啟命令linux步驟是什么?

      1、驗證nginx配置文件是否正確   方法一:進入nginx安裝目錄sbin下,輸入命令./nginx -t   看到如下顯示nginx.conf syntax is ok
    發表于 07-10 16:40

    以太怎么連接 以太組網結構分析

    以太的組網結構涉及多個層面和組件。首先,從網絡結構的角度來看,以太分為物理層、數據鏈路層和高層用戶層。其中,物理層采用特定的通信媒體,如50Ω基帶同軸電纜,實現數據的傳輸。數據鏈路
    的頭像 發表于 03-08 17:19 ?3608次閱讀
    以太<b class='flag-5'>網</b>怎么連接 以太<b class='flag-5'>網</b>組網<b class='flag-5'>結構</b>分析
    主站蜘蛛池模板: 美女被黑人巨大进入 | 视频一区视频二区ae86 | 久久精品无码人妻无码AV蜜臀 | 国产午夜人做人免费视频中文 | 久久精品免费看网站 | 亚洲国产在线观看免费视频 | 美女被触手注入精子强制受孕漫画 | 精品一卡2卡三卡4卡乱码精品视频 | 拔擦拔擦8X永久华人免费播放器 | 久久永久影院免费 | 97伦理电影在线不卡 | 久久精品免费观看久久 | 内射白浆一区二区在线观看 | 亚洲国产精品高清在线 | 夜蒲团之5阳性之教 | 无码国产精品高潮久久9 | 亚洲人美女肛交真人全程 | 香蕉久久av一区二区三区 | 香蕉免费高清完整 | 把手戳进美女尿口里动态图 | 亚洲国产欧美国产综合在线 | 国产亚洲色婷婷久久精品99 | 97夜夜澡人人爽人人模人人喊 | 午夜日本大胆裸艺术 | 精品第一国产综合精品蜜芽 | 久久久久影视 | 看全色黄大色大片免费久黄久 | 粉嫩极品国产在线观看 | 97在线精品视频免费 | 总攻催眠受的高h巨肉np | www.伊人 | 国产精品网红女主播久久久 | 亚洲精品嫩草研究院久久 | 免费看黄色一级 | 国自精品三七区 | 思思99热久久精品在线6 | 久久精品熟女亚洲AV国产 | 国产亚洲精品久久综合阿香蕉 | 亚洲精品高清在线 | 好男人在线观看视频观看高清视频免费 | 伊人伊人伊人 |