摘要:服務(wù)器架構(gòu)模塊化結(jié)構(gòu)服務(wù)器的開發(fā)完全遵循模塊化設(shè)計(jì)思想什么是模塊化開發(fā)單一職責(zé)原則,一個(gè)模塊只負(fù)責(zé)一個(gè)功能將程序分解,自頂向下,逐步求精高內(nèi)聚,低耦合的模塊化結(jié)構(gòu)核心模塊最基本最核心的服務(wù),如進(jìn)程管理權(quán)限控制日志記錄標(biāo)準(zhǔn)模塊服務(wù)器的標(biāo)準(zhǔn)功能
Nginx服務(wù)器架構(gòu) 模塊化結(jié)構(gòu)
什么是模塊化開發(fā)?Nginx 服務(wù)器的開發(fā)完全遵循模塊化設(shè)計(jì)思想
單一職責(zé)原則,一個(gè)模塊只負(fù)責(zé)一個(gè)功能
將程序分解,自頂向下,逐步求精
高內(nèi)聚,低耦合
Nginx的模塊化結(jié)構(gòu)核心模塊: Nginx最基本最核心的服務(wù),如進(jìn)程管理、權(quán)限控制、日志記錄;
標(biāo)準(zhǔn)HTTP模塊: Nginx服務(wù)器的標(biāo)準(zhǔn)HTTP功能;
可選HTTP模塊: 處理特殊的HTTP請(qǐng)求
郵件服務(wù)模塊: 郵件服務(wù)
第三方模塊: 作為擴(kuò)展,完成特殊功能
Nginx的模塊清單
核心模塊
ngx_core
ngx_errlog
ngx_conf
ngx_events
ngxeventcore
ngx_epll
ngx_regex
標(biāo)準(zhǔn)HTTP模塊
ngx_http
ngxhttpcore #配置端口,URI分析,服務(wù)器相應(yīng)錯(cuò)誤處理,別名控制(alias)等
ngxhttplog #自定義access日志
ngxhttpupstream #定義一組服務(wù)器,可以接受來自proxy, Fastcgi,Memcache的重定向;主要用作負(fù)載均衡
ngxhttpstatic
ngxhttpautoindex #自動(dòng)生成目錄列表
ngxhttpindex #處理以/結(jié)尾的請(qǐng)求,如果沒有找到index頁,則看是否開啟了random_index;如開啟,則用之,否則用autoindex
ngxhttpauthbasic #基于http的身份認(rèn)證(authbasic)
ngxhttpaccess #基于IP地址的訪問控制(deny,allow)
ngxhttplimit_conn #限制來自客戶端的連接的響應(yīng)和處理速率
ngxhttplimit_req #限制來自客戶端的請(qǐng)求的響應(yīng)和處理速率
ngxhttpgeo
ngxhttpmap #創(chuàng)建任意的鍵值對(duì)變量
ngxhttpsplit_clients
ngxhttpreferer #過濾HTTP頭中Referer為空的對(duì)象
ngxhttprewrite #通過正則表達(dá)式重定向請(qǐng)求
ngxhttpproxy
ngxhttpfastcgi #支持fastcgi
ngxhttpuwsgi
ngxhttpscgi
ngxhttpmemcached
ngxhttpempty_gif #從內(nèi)存創(chuàng)建一個(gè)1×1的透明gif圖片,可以快速調(diào)用
ngxhttpbrowser #解析http請(qǐng)求頭部的User-Agent 值
ngxhttpcharset #指定網(wǎng)頁編碼
ngxhttpupstreamiphash
ngxhttpupstreamleastconn
ngxhttpupstream_keepalive
ngxhttpwrite_filter
ngxhttpheader_filter
ngxhttpchunked_filter
ngxhttprange_header
ngxhttpgzip_filter
ngxhttppostpone_filter
ngxhttpssi_filter
ngxhttpcharset_filter
ngxhttpuserid_filter
ngxhttpheaders_filter #設(shè)置http響應(yīng)頭
ngxhttpcopy_filter
ngxhttprangebodyfilter
ngxhttpnotmodifiedfilter
可選HTTP模塊
ngxhttpaddition #在響應(yīng)請(qǐng)求的頁面開始或者結(jié)尾添加文本信息
ngxhttpdegradation #在低內(nèi)存的情況下允許服務(wù)器返回444或者204錯(cuò)誤
ngxhttpperl
ngxhttpflv #支持將Flash多媒體信息按照流文件傳輸,可以根據(jù)客戶端指定的開始位置返回Flash
ngxhttpgeoip #支持解析基于GeoIP數(shù)據(jù)庫的客戶端請(qǐng)求
ngxgoogleperftools
ngxhttpgzip #gzip壓縮請(qǐng)求的響應(yīng)
ngxhttpgzip_static #搜索并使用預(yù)壓縮的以.gz為后綴的文件代替一般文件響應(yīng)客戶端請(qǐng)求
ngxhttpimage_filter #支持改變png,jpeg,gif圖片的尺寸和旋轉(zhuǎn)方向
ngxhttpmp4 #支持.mp4,.m4v,.m4a等多媒體信息按照流文件傳輸,常與ngxhttpflv一起使用
ngxhttprandom_index #當(dāng)收到/結(jié)尾的請(qǐng)求時(shí),在指定目錄下隨機(jī)選擇一個(gè)文件作為index
ngxhttpsecure_link #支持對(duì)請(qǐng)求鏈接的有效性檢查
ngxhttpssl #支持https
ngxhttpstub_status
ngxhttpsub_module #使用指定的字符串替換響應(yīng)中的信息
ngxhttpdav #支持HTTP和WebDAV協(xié)議中的PUT/DELETE/MKCOL/COPY/MOVE方法
ngxhttpxslt #將XML響應(yīng)信息使用XSLT進(jìn)行轉(zhuǎn)換
郵件服務(wù)模塊
ngxmailcore
ngxmailpop3
ngxmailimap
ngxmailsmtp
ngxmailauth_http
ngxmailproxy
ngxmailssl
第三方模塊
echo-nginx-module #支持在nginx配置文件中使用echo/sleep/time/exec等類Shell命令
memc-nginx-module
rds-json-nginx-module #使nginx支持json數(shù)據(jù)的處理
lua-nginx-module
Nginx的web請(qǐng)求處理機(jī)制作為服務(wù)器軟件,必須具備并行處理多個(gè)客戶端的請(qǐng)求的能力, 工作方式主要以下3種:
多進(jìn)程(Apache)
優(yōu)點(diǎn): 設(shè)計(jì)和實(shí)現(xiàn)簡單;子進(jìn)程獨(dú)立
缺點(diǎn): 生成一個(gè)子進(jìn)程要內(nèi)存復(fù)制, 在資源和時(shí)間上造成額外開銷
多線程(IIS)
優(yōu)點(diǎn): 開銷小
缺點(diǎn): 開發(fā)者自己要對(duì)內(nèi)存進(jìn)行管理;線程之間會(huì)相互影響
異步方式(Nginx)
經(jīng)常說道異步非阻塞這個(gè)概念, 包含兩層含義:
通信模式:
同步: 發(fā)送方發(fā)送完請(qǐng)求后,等待并接受對(duì)方的回應(yīng)后,再發(fā)送下個(gè)請(qǐng)求
異步: 發(fā)送方發(fā)送完請(qǐng)求后,不必等待,直接發(fā)送下個(gè)請(qǐng)求
Nginx的事件驅(qū)動(dòng)模型文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/39207.html
摘要:版本的特性并行的三次握手四次揮手粘包問題,連接池,攻擊通信原理加密算法配置文件逐行理解與配置配置規(guī)則錯(cuò)誤的排查架構(gòu)原理的理解的了解配置文件進(jìn)程數(shù)與和內(nèi)存的關(guān)系垃圾回收內(nèi)存泄漏運(yùn)行過程協(xié)議與的區(qū)別注是擴(kuò)展庫版本是版本算法一致性 1,http (1)request reponse (2)code:200 302,304 400 404 403 500 502 504 nginx499 ...
摘要:它同時(shí)也和微服務(wù)架構(gòu)相互促進(jìn),并肩前行。為了反向代理的速度,會(huì)和后端保持一個(gè)連接池。好了,現(xiàn)在我們可以知道,可以很好的勝任微服務(wù)架構(gòu)中的了。我認(rèn)為并不適合微服務(wù)架構(gòu),但依然是有個(gè)復(fù)雜的架構(gòu)方案的,這個(gè)主題改天再說。 背景 大家都知道,Docker這些年讓IT界產(chǎn)生了深刻的變革,從開發(fā)到測試到運(yùn)維,處處都有它的身影。它同時(shí)也和微服務(wù)架構(gòu)相互促進(jìn),并肩前行。 在最新版的 Docker(CE...
摘要:它同時(shí)也和微服務(wù)架構(gòu)相互促進(jìn),并肩前行。為了反向代理的速度,會(huì)和后端保持一個(gè)連接池。好了,現(xiàn)在我們可以知道,可以很好的勝任微服務(wù)架構(gòu)中的了。我認(rèn)為并不適合微服務(wù)架構(gòu),但依然是有個(gè)復(fù)雜的架構(gòu)方案的,這個(gè)主題改天再說。 背景 大家都知道,Docker這些年讓IT界產(chǎn)生了深刻的變革,從開發(fā)到測試到運(yùn)維,處處都有它的身影。它同時(shí)也和微服務(wù)架構(gòu)相互促進(jìn),并肩前行。 在最新版的 Docker(CE...
閱讀 1165·2021-11-25 09:43
閱讀 2979·2019-08-30 15:54
閱讀 3363·2019-08-30 15:54
閱讀 3013·2019-08-30 15:44
閱讀 1636·2019-08-26 12:18
閱讀 2266·2019-08-26 11:42
閱讀 887·2019-08-26 11:35
閱讀 3306·2019-08-23 18:22