亚洲国产成人精品久久_欧美日韩国产综合一区二区_亚洲精品理论电影_色综合久久中文字幕

Nginx原理和架構(gòu)|原力計(jì)劃

放大字體  縮小字體 發(fā)布日期:2019-12-26  來源:來自互聯(lián)網(wǎng)  作者:來自互聯(lián)網(wǎng)  瀏覽次數(shù):403
導(dǎo)讀

Nginx 里有一個(gè) master 進(jìn)程和多個(gè) worker 進(jìn)程。 多個(gè)worker進(jìn)程之間是對(duì)等且相互獨(dú)立的,他們同等競(jìng)爭(zhēng)來自客戶端的請(qǐng)求。 為了避免出現(xiàn)內(nèi)存碎片,減少向操作系統(tǒng)申…

作者 | albon_arith

責(zé)編 | Elle

出品 | CSDN 博客

Nginx 是一個(gè)免費(fèi)的,開源的,高性能的 HTTP 服務(wù)器和反向代理,以及 IMAP / POP3 代理服務(wù)器。Nginx 以其高性能,穩(wěn)定性,豐富的功能,簡(jiǎn)單的配置和低資源消耗而聞名。

Nginx 的整體架構(gòu)

Nginx 里有一個(gè) master 進(jìn)程和多個(gè) worker 進(jìn)程。master 進(jìn)程并不處理網(wǎng)絡(luò)請(qǐng)求,主要負(fù)責(zé)調(diào)度工作進(jìn)程:加載配置、啟動(dòng)工作進(jìn)程及非停升級(jí)。worker 進(jìn)程負(fù)責(zé)處理網(wǎng)絡(luò)請(qǐng)求與響應(yīng)。

master進(jìn)程主要用來管理worker進(jìn)程,具體包括如下4個(gè)主要功能:

  1. 接收來自外界的信號(hào)。
  2. 向各worker進(jìn)程發(fā)送信號(hào)。
  3. 監(jiān)控woker進(jìn)程的運(yùn)行狀態(tài)。
  4. 當(dāng)woker進(jìn)程退出后(異常情況下),會(huì)自動(dòng)重新啟動(dòng)新的woker進(jìn)程。

woker進(jìn)程主要用來處理基本的網(wǎng)絡(luò)事件:

  1. 多個(gè)worker進(jìn)程之間是對(duì)等且相互獨(dú)立的,他們同等競(jìng)爭(zhēng)來自客戶端的請(qǐng)求。
  2. 一個(gè)請(qǐng)求,只可能在一個(gè)worker進(jìn)程中處理,一個(gè)worker進(jìn)程,不可能處理其它進(jìn)程的請(qǐng)求。
  3. worker進(jìn)程的個(gè)數(shù)是可以設(shè)置的,一般我們會(huì)設(shè)置與機(jī)器cpu核數(shù)一致。同時(shí),nginx為了更好的利用多核特性,具有cpu綁定選項(xiàng),我們可以將某一個(gè)進(jìn)程綁定在某一個(gè)核上,這樣就不會(huì)因?yàn)檫M(jìn)程的切換帶來cache的失效。

Ngnix 是如何實(shí)現(xiàn)高性能的?

事件驅(qū)動(dòng)模型

基于異步及非阻塞的事件驅(qū)動(dòng)模型,可以說是 Nginx 得以獲得高并發(fā)、高性能的關(guān)鍵因素。這一點(diǎn)上和 Netty 類似,底層都是使用的 BSD kqueue、Linux epoll 及 Solaris event ports。

多進(jìn)程機(jī)制

使用多進(jìn)程的好處有兩點(diǎn):

  1. 進(jìn)程之間不共享資源,不需要加鎖,減少了使用鎖對(duì)性能造成的影響,同時(shí)降低編程的復(fù)雜度,降低開發(fā)成本。
  2. 采用獨(dú)立的進(jìn)程,可以讓進(jìn)程互相之間不會(huì)影響,如果一個(gè)進(jìn)程發(fā)生異常退出時(shí),其它進(jìn)程正常工作,master 進(jìn)程則很快啟動(dòng)新的 worker 進(jìn)程,確保服務(wù)不會(huì)中斷,從而將風(fēng)險(xiǎn)降到最低。

內(nèi)存池

為了避免出現(xiàn)內(nèi)存碎片,減少向操作系統(tǒng)申請(qǐng)內(nèi)存的次數(shù)、降低各個(gè)模塊的開發(fā)復(fù)雜度,Nginx 設(shè)計(jì)了簡(jiǎn)單的內(nèi)存池,它的作用主要是把多次向系統(tǒng)申請(qǐng)內(nèi)存的操作整合成一次,這大大減少了 CPU 資源的消耗,同時(shí)減少了內(nèi)存碎片。

模塊化設(shè)計(jì)

高度模塊化的設(shè)計(jì)是 Nginx 的架構(gòu)基礎(chǔ)。Openresty 就是在 Nginx 上引入了 lua 等第三方模塊,使得擴(kuò)展更加方便了。

 
 
免責(zé)聲明
本文為會(huì)員免費(fèi)發(fā)布,僅代表發(fā)布者個(gè)人觀點(diǎn),本站未對(duì)其內(nèi)容進(jìn)行核實(shí),請(qǐng)讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,作者需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請(qǐng)及時(shí)聯(lián)系我們刪除處理。
 
 
主站蜘蛛池模板: 日本一区二区三不卡| 91国产美女在线观看| 国产精品极品在线| 视频一区二区三区在线观看 | 国产国产精品人在线视| 热久久精品国产| 色综合久久久久久中文网| 精品激情国产视频| 欧美一级片中文字幕| 日韩国产精品毛片| 91国偷自产一区二区三区的观看方式| 激情网站五月天| 国产在线精品一区二区中文v| 欧美日韩午夜爽爽| 欧美精品手机在线| 亚洲午夜精品一区二区| 中文字幕无码不卡免费视频| 国产精品美女久久久久久免费| 欧美精品手机在线| 亚洲永久免费观看| 91精品视频免费| 国产传媒久久久| 国产精品丝袜久久久久久消防器材| 久久久亚洲国产精品| 免费人成在线观看视频播放| 欧美在线一区二区三区四| 日韩av一级大片| 欧美亚洲另类在线| 欧美激情国产精品| 欧美日本精品在线| 久久精品国产sm调教网站演员| 久久福利视频导航| 久久国产精品久久久久久| 久久精品国产2020观看福利| 蜜桃视频成人在线观看| 久久精品在线播放| 国产在线视频91| 国产精品福利视频| 伊人久久大香线蕉精品| 色综合色综合网色综合| 日本国产欧美一区二区三区|