国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

Nginx知識網結構圖

Linux愛好者 ? 來源:Linux愛好者 ? 作者:Linux愛好者 ? 2020-12-11 16:29 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.Nginx知識網結構圖

31b3606a-2eb2-11eb-a64d-12bb97331649.png


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

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

1.1反向代理

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

34d0682e-2eb2-11eb-a64d-12bb97331649.png

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

34e0f018-2eb2-11eb-a64d-12bb97331649.png

1.2負載均衡

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

普通請求和響應過程

35095436-2eb2-11eb-a64d-12bb97331649.png


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

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

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

圖解負載均衡

351a3080-2eb2-11eb-a64d-12bb97331649.png


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

1.3動靜分離

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

動靜分離之前的狀態

353517e2-2eb2-11eb-a64d-12bb97331649.png


動靜分離之后

35449b22-2eb2-11eb-a64d-12bb97331649.png

2. nginx如何在linux安裝

https://blog.csdn.net/yujing1314/article/details/97267369

3. nginx常用命令

查看版本

nginx-v

啟動

nginx

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

nginx-sstop nginx-squit

重新加載nginx配置

nginx-sreload

4.nginx的配置文件

配置文件分三部分組成

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

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

357074e0-2eb2-11eb-a64d-12bb97331649.png

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

支持的最大連接數
357e17da-2eb2-11eb-a64d-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訪問

3595d492-2eb2-11eb-a64d-12bb97331649.png


具體流程

35a4d17c-2eb2-11eb-a64d-12bb97331649.png


修改之前

35b36b60-2eb2-11eb-a64d-12bb97331649.png

配置


再次訪問

360467e0-2eb2-11eb-a64d-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,都可以訪問,端口修改配置文件即可。

36176bce-2eb2-11eb-a64d-12bb97331649.png

36282658-2eb2-11eb-a64d-12bb97331649.png

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

3682ca5e-2eb2-11eb-a64d-12bb97331649.png

369158ee-2eb2-11eb-a64d-12bb97331649.png


響應如下

36b18506-2eb2-11eb-a64d-12bb97331649.png

36d4a360-2eb2-11eb-a64d-12bb97331649.png


3.具體配置

36f5a150-2eb2-11eb-a64d-12bb97331649.png


重新加載nginx

nginx-sreload

訪問

3717edbe-2eb2-11eb-a64d-12bb97331649.png

3717edbe-2eb2-11eb-a64d-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

37697602-2eb2-11eb-a64d-12bb97331649.png

37ace8e2-2eb2-11eb-a64d-12bb97331649.png


2.重啟nginx

nginx-sreload

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

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

37bcbc9a-2eb2-11eb-a64d-12bb97331649.png

37d0f106-2eb2-11eb-a64d-12bb97331649.png


3.負載均衡方式

輪詢(默認)

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

37df80a4-2eb2-11eb-a64d-12bb97331649.png

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

37ef8daa-2eb2-11eb-a64d-12bb97331649.png

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

381ee88e-2eb2-11eb-a64d-12bb97331649.png

4.4 動靜分離實戰

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

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

動靜分離圖析

383ed32e-2eb2-11eb-a64d-12bb97331649.png


實戰準備
準備靜態文件

384df480-2eb2-11eb-a64d-12bb97331649.png

3870a908-2eb2-11eb-a64d-12bb97331649.png


配置nginx

3881026c-2eb2-11eb-a64d-12bb97331649.png

5.nginx高可用

如果nginx出現問題

38abd3c0-2eb2-11eb-a64d-12bb97331649.png


解決辦法

38bbdc66-2eb2-11eb-a64d-12bb97331649.png


前期準備

兩臺nginx服務器

安裝keepalived

虛擬ip

5.1安裝keepalived

[root@192usr]#yuminstallkeepalived-y [root@192usr]#rpm-q-akeepalived keepalived-1.3.5-16.el7.x86_64

修改配置文件

[root@192keepalived]#cd/etc/keepalived [root@192keepalived]#vikeepalived.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_fromAlexandre.Cassen@firewall.loc smtp_server192.168.25.147 smtp_connect_timeout30 router_idLVS_DEVEL#訪問的主機地址 } vrrp_scriptchk_nginx{ script"/usr/local/src/nginx_check.sh"#檢測文件的地址 interval2#檢測腳本執行的間隔 weight2#權重 } vrrp_instanceVI_1{ stateBACKUP#主機MASTER、備機BACKUP interfaceens33#網卡 virtual_router_id51#同一組需一致 priority90#訪問優先級,主機值較大,備機較小 advert_int1 authentication{ auth_typePASS auth_pass1111 } virtual_ipaddress{ 192.168.25.50#虛擬ip } }

啟動

[root@192sbin]#systemctlstartkeepalived.service

38caf9ee-2eb2-11eb-a64d-12bb97331649.png


訪問虛擬ip成功

38e29a22-2eb2-11eb-a64d-12bb97331649.png


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

6.原理解析

38f21a2e-2eb2-11eb-a64d-12bb97331649.png


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

391f3a72-2eb2-11eb-a64d-12bb97331649.png


worker如何工作

小結

worker數應該和CPU數相等

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

責任編輯:lq

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

    關注

    14

    文章

    10256

    瀏覽量

    91517
  • HTTP
    +關注

    關注

    0

    文章

    537

    瀏覽量

    35388
  • nginx
    +關注

    關注

    0

    文章

    186

    瀏覽量

    13120

原文標題:一文讀懂 Nginx

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    知識分享:產品的結構構架與EMC

    知識分享:產品的結構構架與EMC結構是產品的重要組成部分,結構不能單獨成為EMC問題的來源,但卻是解決EMC問題的重要途徑。電磁場屏蔽、良好的接地系統以及耦合的避免都要借助于良好的
    的頭像 發表于 01-19 17:07 ?1387次閱讀
    <b class='flag-5'>知識</b>分享:產品的<b class='flag-5'>結構</b>構架與EMC

    RDMA設計12:融合以太協議棧設計1

    控制器,其結構如圖 1 所示。 圖1 融合以太協議棧結構圖 B站已給出相關性能的視頻,如想進一步了解,請搜索B站用戶:專注與守望 https://www.bilibili.com/video
    發表于 12-25 11:39

    Nginx常見故障案例總結

    在互聯網公司的運維生涯中,Nginx故障可以說是最常見也最讓人頭疼的問題之一。從簡單的配置錯誤到復雜的性能瓶頸,從偶發的502到持續的高延遲,每一個故障背后都有其獨特的原因和解決方案。
    的頭像 發表于 09-18 14:51 ?1292次閱讀

    如何基于Nginx構建微服務網關

    今天,我將分享我們團隊如何基于Nginx構建了一個日均處理10億+請求的微服務網關,以及踩過的那些坑。這套方案已經穩定運行2年+,經歷過多次大促考驗。
    的頭像 發表于 09-02 16:29 ?829次閱讀

    Nginx高并發優化方案

    作為一名在生產環境中摸爬滾打多年的運維工程師,我見過太多因為Nginx配置不當導致的性能瓶頸。今天分享一套完整的Nginx高并發優化方案,幫助你的系統從10萬QPS突破到百萬級別。
    的頭像 發表于 08-13 15:51 ?1017次閱讀

    Nginx在企業環境中的調優策略

    Nginx作為現代互聯網架構中最重要的Web服務器和反向代理服務器,其性能調優對企業級應用的穩定性和效率至關重要。本指南將從運維實踐角度出發,詳細介紹Nginx在企業環境中的各種調優策略和最佳實踐。
    的頭像 發表于 07-14 11:13 ?637次閱讀

    Nginx和Apache的差異

    Nginx是一個 輕量級/高性能 的反向代理Web服務器,用于 HTTP、HTTPS、SMTP、POP3 和IMAP 協議。
    的頭像 發表于 07-09 09:45 ?685次閱讀

    Nginx配置終極指南

    Nginx 是開源、高性能、高可靠的 Web 和反向代理服務器,而且支持熱部署,幾乎可以做到 7 * 24 小時不間斷運行,即使運行幾個月也不需要重新啟動,還能在不間斷服務的情況下對軟件版本進行熱
    的頭像 發表于 06-18 15:56 ?1038次閱讀
    <b class='flag-5'>Nginx</b>配置終極指南

    云原生環境里Nginx的故障排查思路

    本文聚焦于云原生環境下Nginx的故障排查思路。隨著云原生技術的廣泛應用,Nginx作為常用的高性能Web服務器和反向代理服務器,在容器化和編排的環境中面臨著新的故障場景和挑戰。
    的頭像 發表于 06-17 13:53 ?982次閱讀
    云原生環境里<b class='flag-5'>Nginx</b>的故障排查思路

    Nginx性能優化終極指南

    而worker 進程數默認為 1 。單進程最大連接數為1024。如下圖(打開Nginx目錄下的/conf/nginx.conf 文檔),現在我們來對這兩個數值進行調優
    的頭像 發表于 06-16 13:44 ?1284次閱讀
    <b class='flag-5'>Nginx</b>性能優化終極指南

    Nginx基礎安裝與配置教程

    說起Web服務器,大家第一反應可能是Apache,但作為一個在運維路上摸爬滾打的技術人,我必須要為Nginx正名一下!這個由俄羅斯大神Igor Sysoev開發的輕量級HTTP服務器,真的是我見過最"能打"的Web服務器之一。
    的頭像 發表于 06-13 16:13 ?942次閱讀

    Nginx核心功能深度解析

    Nginx核心功能深度解析
    的頭像 發表于 05-09 10:50 ?888次閱讀

    Nginx緩存配置詳解

    Nginx 是一個功能強大的 Web 服務器和反向代理服務器,它可以用于實現靜態內容的緩存,緩存可以分為客戶端緩存和服務端緩存。
    的頭像 發表于 05-07 14:03 ?1258次閱讀
    <b class='flag-5'>Nginx</b>緩存配置詳解

    必學!PCB設計布線技巧、電機控制、電源管理設計教程等精華資料

    ,以及是否可以讓器件的性能達到最優等。2、電機控制的DSP程序設計及CAN基礎知識DSP芯片簡介、電機控制系統結構圖、電機控制系統程序需求分析、電機控制系統動態結構圖
    的頭像 發表于 04-22 08:05 ?644次閱讀
    必學!PCB設計布線技巧、電機控制、電源管理設計教程等精華資料

    Nginx服務優化教程

    隱藏Nginx版本號,避免安全漏洞泄漏:修改配置文件法;修改源碼法
    的頭像 發表于 03-12 15:57 ?994次閱讀
    <b class='flag-5'>Nginx</b>服務優化教程