Nginx 解決了服務(wù)器的C10K(就是在一秒之內(nèi)連接客戶端的數(shù)目為10k即1萬)問題。 Nginx的設(shè)計(jì)不像傳統(tǒng)的服務(wù)器那樣使用線程處理請求,而是一個(gè)更加高級的機(jī)制—事件驅(qū)動機(jī)制,是一種異步事件驅(qū)動結(jié)構(gòu)。
雖然目前Nginx的份額在市場上只占很少部分,但是其高性能和低消耗內(nèi)存的結(jié)構(gòu),使得其越來越普遍,典型的一個(gè)應(yīng)用就是我們可以使用Nginx作為反向代理進(jìn)行網(wǎng)站的負(fù)載均衡器。例如:Wordpress、GitHub等知名的網(wǎng)站都使用到了Nginx。
Nginx的特點(diǎn)
跨平臺:可以在大多數(shù)Unix like 系統(tǒng)編譯運(yùn)行。而且也有Windows的移植版本。
配置異常簡單:非常的簡單,易上手。
非阻塞、高并發(fā)連接:數(shù)據(jù)復(fù)制時(shí),磁盤I/O的第一階段是非阻塞的。官方測試能支持5萬并發(fā)連接,實(shí)際生產(chǎn)中能跑2~3萬并發(fā)連接數(shù)(得益于Nginx采用了最新的epoll事件處理模型(消息隊(duì)列)。
Nginx代理和后端Web服務(wù)器間無需長連接;
Nginx接收用戶請求是異步的,即先將用戶請求全部接收下來,再一次性發(fā)送到后端Web服務(wù)器,極大減輕后端Web服務(wù)器的壓力。
發(fā)送響應(yīng)報(bào)文時(shí),是邊接收來自后端Web服務(wù)器的數(shù)據(jù),邊發(fā)送給客戶端。
網(wǎng)絡(luò)依賴性低,理論上只要能夠ping通就可以實(shí)施負(fù)載均衡,而且可以有效區(qū)分內(nèi)網(wǎng)、外網(wǎng)流量。
支持內(nèi)置服務(wù)器檢測。Nginx能夠根據(jù)應(yīng)用服務(wù)器處理頁面返回的狀態(tài)碼、超時(shí)信息等檢測服務(wù)器是否出現(xiàn)故障,并及時(shí)返回錯誤的請求重新提交到其它節(jié)點(diǎn)上。
采用Master/worker多進(jìn)程工作模式
此外還有內(nèi)存消耗小、成本低廉(比F5硬件負(fù)載均衡器廉價(jià)太多)、節(jié)省帶寬、穩(wěn)定性高等特點(diǎn)。
Nginx的基本功能
Nginx的功能包括基本HTTP功能和擴(kuò)展功能。和Apache服務(wù)器一樣,Nginx服務(wù)器為了提供更多的功能并且能夠有效地?cái)U(kuò)展這些功能。每一個(gè)模塊都提供了一個(gè)功能,通過編譯這些功能模塊來實(shí)現(xiàn)功能的擴(kuò)展。
1、基本HTTP功能
(a)提供靜態(tài)文件和index文件,處理靜態(tài)文件,索引文件以及自動索引,打開文件描述符緩存;
(b)使用緩存加速反向代理,反向代理加速(無緩存),簡單的負(fù)載均衡和容錯;
(c)使用緩存機(jī)制加速遠(yuǎn)程FastCGI,簡單的負(fù)載均衡和容錯;
(d)模塊化的結(jié)構(gòu)。過濾器包括gzipping,byte ranges,chunked responses,以及 SSI-filter。在SSI過濾器中,到同一個(gè) proxy 或者 FastCGI 的多個(gè)子請求并發(fā)處理;
(e)支持SSL 和 TLS SNI 支持;
(f)IMAP/POP3代理功能;
(g)使用外部 HTTP 認(rèn)證服務(wù)器重定向用戶到 IMAP/POP3 后端;
(h)使用外部 HTTP 認(rèn)證服務(wù)器認(rèn)證用戶后連接重定向到內(nèi)部的 SMTP 后端;
2、其他HTTP功能
(a)基于名稱和基于IP的虛擬服務(wù)器;
(b)支持Keep-alive和管道連接;
(c)靈活的配置和重新配置、在線升級的時(shí)候不用中斷客戶訪問的處理;
(d)訪問日志的格式,緩存日志寫入和快速日志輪循;
(e)3xx-5xx錯誤代碼重定向;
(f)速度限制。
Nginx的基本模塊
Nginx的核心模塊包括內(nèi)核模塊和事件驅(qū)動模塊,即:CoreModule和EventsModule;另外還有第三方模塊 HTTP內(nèi)核模塊,HttpCoreModule,它是Nginx服務(wù)器的核心模塊。
CoreModule和EventsModule模塊的配置相對于HttpCoreModule會少一些,但是它們的配置將會影響系統(tǒng)的性能,而非功能上的差異。
1、CoreModule用于控制Nginx服務(wù)器的基本功能;
2、EventsModule用于控制Nginx如何處理連接。該模塊的指令的一些參數(shù)會對應(yīng)用系統(tǒng)的性能產(chǎn)生重要的影響;
3、HttpCoreModule提供HTTP訪問Nginx服務(wù)器,該模塊是不能缺少的。
Nginx配置安裝的環(huán)境
1、yum -y install gcc* epel-release curl curl-devel mcrypt openssl openssl-devel gd gd-devel freetype freetype-devel zlib zlib-devel zip libmcrypt-devel libmcrypt pcre-devel libevent-devel ncurses-devel libxml2* mcrypt* libmcrypt* cmake gcc* lrzsz ntp telnet
2、創(chuàng)建用戶
useradd -s /sbin/nologin web
3、創(chuàng)建nginx的安裝目錄(此步驟可以省略)
mkdir -p /usr/local/nginx
chown -r web:web /usr/local/nginx
4、拷貝下載好的軟件包到/usr/src/目錄
5、解壓Nginx安裝包
tar -zxf /usr/src/tengine-2.1.2.tar.gz
cd /usr/local/tengine-2.1.2/
6、進(jìn)行檢測
./configure --prefix=/usr/local/nginx --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre
7、編譯
make
8、安裝
make install
9、啟動nginx /usr/local/nginx/sbin/nginx
更新日志
Nginx 1.7.7 發(fā)布了,下載地址:
改進(jìn)記錄包括:
*) Change: now nginx takes into account the “Vary” header line in a
backend response while caching.
*) Feature: the “proxy_force_ranges”, “fastcgi_force_ranges”,
“scgi_force_ranges”, and “uwsgi_force_ranges” directives.
*) Feature: the “proxy_limit_rate”, “fastcgi_limit_rate”,
“scgi_limit_rate”, and “uwsgi_limit_rate” directives.
*) Feature: the “Vary” parameter of the “proxy_ignore_headers”,
“fastcgi_ignore_headers”, “scgi_ignore_headers”, and
“uwsgi_ignore_headers” directives.
*) Bugfix: the last part of a response received from a backend with
unbufferred proxy might not be sent to a client if “gzip” or “gunzip”
directives were used.
*) Bugfix: in the “proxy_cache_revalidate” directive.
Thanks to Piotr Sikora.
*) Bugfix: in error handling.
Thanks to Yichun Zhang and Daniil Bondarev.
*) Bugfix: in the “proxy_next_upstream_tries” and
“proxy_next_upstream_timeout” directives.
Thanks to Feng Gu.
*) Bugfix: nginx/Windows could not be built with MinGW-w64 gcc.
Thanks to Kouhei Sutou.
web服務(wù)器Nginx發(fā)布1.6.2。2014-09-16。上個(gè)版本2014-08-05的1.6.1 遺留穩(wěn)定版1.4.7/1.2.9/1.0.15.開發(fā)版1.7.5 修正了一個(gè)SSL相關(guān)的安全漏洞(CVE-2014-3616),以及兩個(gè)DNS可能導(dǎo)致請求掛起B(yǎng)ug(1.5.8引入)。
nginx開發(fā)團(tuán)隊(duì)還同步發(fā)布了nginx 1.7.0主線版本,新特性如下:
后端SSL證書驗(yàn)證
當(dāng)使用SSL后端時(shí),支持SNI(服務(wù)器名稱標(biāo)識符)
FTP 工具
FTP 工具
FTP 工具
FTP 工具
FTP 工具
FTP 工具
浩辰CAD 2025是一款功能多樣化的全新CAD設(shè)計(jì)軟件,終端數(shù)據(jù)和模型上云互通,帶給用戶全新的云端協(xié)同辦公體驗(yàn)。浩辰CAD 2025的參數(shù)化約束技術(shù)取得顯著進(jìn)展,為企業(yè)國產(chǎn)化應(yīng)用提供強(qiáng)大支持;借助...
拾光壁紙最新版是一款很棒的壁紙軟件,該軟件不僅集成了多個(gè)高質(zhì)量壁紙?jiān)矗诩埑每,并且支持每天推送自動切換桌面壁紙/鎖屏壁紙,保證你始終保持著新鮮感,滿足用戶對于壁紙軟件的需求,有...
YY開播電腦最新版是一款專為YY所打造的直播伴侶軟件,YY開播不僅支持第三方設(shè)備調(diào)用YY開播作為攝像頭,而且還有擁有娛樂直播和游戲直播兩種直播方式,并且YY開播能夠幫助用戶搞定所有直播的需求...
KB5043080是微軟所發(fā)布Win11 24H2最新更新補(bǔ)丁,版本號升級為26100.1742,此次更新也是改進(jìn)了在使用深色模式時(shí),任務(wù)管理器中“性能”頁上的圖形不顯示正確顏色的問題,本站為用戶提供最新...
Win11 23H2 KB5043076補(bǔ)丁是微軟發(fā)布最新九月更新補(bǔ)丁,版本號升級為22631.4169,此次更新不僅包含了22H2的所有內(nèi)容,同時(shí)也解決了Windows 操作系統(tǒng)的安全問題,本站提供最新補(bǔ)丁下載,如果有需...
Win11 22H2 KB5043076更新補(bǔ)丁官方版是專為Windows 11系統(tǒng)的22H2版本所推出的一系列更新和修復(fù)程序,此次更新后不僅修復(fù)了文件資源管理器中的多個(gè)錯誤,同時(shí)也更新了小部件面板,如果有需要更新...
發(fā)表評論
共0條
評論就這些咯,讓大家也知道你的獨(dú)特見解
立即評論以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場