基于Nginx的衍生版服務器Tengine簡介
Tengine是由淘寶網發(fā)起的Web服務器項目。它在Nginx的基礎上,針對大訪問量網站的需求,添加了很多高級功能和特性。Tengine的性能和穩(wěn)定性已經在大型的網站如淘寶網,天貓商城等得到了很好的檢驗。它的最終目標是打造一個高效、穩(wěn)定、安全、易用的Web平臺。
Nginx的特性:
1、基本的HTTP服務器特性
1.處理靜態(tài)文件,索引文件以及自動索引;打開文件描述符緩存;
2.使用緩存加速反向代理;簡單負載均衡以及容錯;
3.遠程FastCGI,uwsgi,SCGI,和memcached服務的緩存加速支持;簡單的負載均衡以及容錯;
4.模塊化的架構。過濾器包括gzip壓縮、ranges支持、chunked響應、XSLT,SSI以及圖像縮放。在SSI 過濾器中,一個包含多個SSI的頁面,如果經由FastCGI或反向代理處理,可被并行處理;
5.支持SSL,TLS SNI。
2、其他的HTTP服務器特性
1.基于名字和IP的虛擬主機;
2.Keep-alive和pipelined連接支持;
3.靈活的配置;
4.重新加載配置以及在線升級時,不需要中斷正在處理的請求;
5.自定義訪問日志格式,帶緩存的日志寫操作以及快速日志輪轉;
6.3xx-5xx錯誤代碼重定向;
7.重寫(rewrite)模塊:使用正則表達式改變URI;
8.根據(jù)客戶端地址執(zhí)行不同的功能;
9.基于客戶端IP地址和HTTP基本認證機制的訪問控制;
10.支持驗證HTTP referer;
11.支持PUT、DELETE、MKCOL、COPY以及MOVE方法;
12.支持FLV流和MP4流;
13.速度限制;
14.來自同一地址的同時連接數(shù)或請求數(shù)限制;
15.嵌入Perl語言。
3、郵件代理服務器特性
1.使用外部HTTP認證服務器重定向用戶到IMAP/POP3后端;
2.使用外部HTTP認證服務器認證用戶后重定向連接到內部SMTP后端;
3.支持的認證方式:
3.1).POP3: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
3.2)IMAP: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
3.3)SMTP: AUTH LOGIN/PLAIN/CRAM-MD5;
4.SSL支持;
5.STARTTLS和STLS支持。
Tengine的特性:
1.繼承Nginx-1.4.7的所有特性,100%兼容Nginx的配置;
2.動態(tài)模塊加載(DSO)支持。加入一個模塊不再需要重新編譯整個Tengine;
3.支持SPDY v3協(xié)議,自動檢測同一端口的SPDY請求和HTTP請求;
4.流式上傳到HTTP后端服務器或FastCGI服務器,大量減少機器的I/O壓力;
5.更加強大的負載均衡能力,包括一致性hash模塊、會話保持模塊,還可以對后端的服務器進行主動健康檢查,根據(jù)服務器狀態(tài)自動上線下線;
6.輸入過濾器機制支持。通過使用這種機制Web應用防火墻的編寫更為方便;
7.支持設置proxy、memcached、fastcgi、scgi、uwsgi在后端失敗時的重試次數(shù)
8.動態(tài)腳本語言Lua支持。擴展功能非常高效簡單;
9.支持管道(pipe)和syslog(本地和遠端)形式的日志以及日志抽樣;
10.支持按指定關鍵字(域名,url等)收集Tengine運行狀態(tài);
11.組合多個CSS、JavaScript文件的訪問請求變成一個請求;
12.自動去除空白字符和注釋從而減小頁面的體積
13.自動根據(jù)CPU數(shù)目設置進程個數(shù)和綁定CPU親緣性;
14.監(jiān)控系統(tǒng)的負載和資源占用從而對系統(tǒng)進行保護;
15.顯示對運維人員更友好的出錯信息,便于定位出錯機器;
16.更強大的防攻擊(訪問速度限制)模塊;
17.更方便的命令行參數(shù),如列出編譯的模塊列表、支持的指令等;
18.可以根據(jù)訪問文件類型設置過期時間;
架構和擴展性(Nginx)
1.一個主進程和多個工作進程,工作進程以非特權用戶運行;
2.支持的事件機制:kqueue(FreeBSD 4.1+)、epoll(Linux 2.6+)、rt signals(Linux 2.2.19+)、/dev/poll(Solaris 7 11/99+)、event ports(Solaris 10)、select以及poll;
3.眾多支持的kqueue特性包括EV_CLEAR、EV_DISABLE(臨時禁止事件)、NOTE_LOWAT、EV_EOF,可用數(shù)據(jù)的數(shù)量,錯誤代碼;
4.支持sendfile(FreeBSD 3.1+, Linux 2.2+, Mac OS X 10.5+)、sendfile64(Linux 2.4.21+)和sendfilev(Solaris 8 7/01+);
5.文件AIO(FreeBSD 4.3+, Linux 2.6.22+);
DIRECTIO (FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, Mac OS X);
6.支持Accept-filters(FreeBSD 4.1+, NetBSD 5.0+)和 TCP_DEFER_ACCEPT(Linux 2.4+);
7.10000個非活躍的HTTP keep-alive連接僅占用約5M內存;
8.盡可能避免數(shù)據(jù)拷貝操作。
相關文章
SpringBoot項目整合FastDFS+Nginx實現(xiàn)圖片上傳功能
FastDFS是一個開源的輕量級分布式文件系統(tǒng),它對文件進行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負載均衡的問題,對SpringBoot整合FastDFS實現(xiàn)圖片上傳功能,感興趣的朋友一起看看吧2022-05-05

