Tengine是由淘寶網發起的Web服務器項目。它在Nginx的基礎上,針對大訪問量網站的需求,添加了不少高級功能和特性。最終目標是打造一個高效、穩定、安全、易用的Web平臺。後端
一、基本的HTTP服務器特性緩存
1.處理靜態文件,索引文件以及自動索引;打開文件描述符緩存;安全
2.使用緩存加速反向代理;簡單負載均衡以及容錯;服務器
3.遠程FastCGI,uwsgi,SCGI,和memcached服務的緩存加速支持;簡單的負載均衡以及容錯;網絡
4.模塊化的架構。過濾器包括gzip壓縮、ranges支持、chunked響應、XSLT,SSI以及圖像縮放。在SSI 過濾器中,一個包含多個SSI的頁面,若是經由FastCGI或反向代理處理,可被並行處理;架構
5.支持SSL,TLS SNI。負載均衡
代理服務器通常指局域網內部的機器經過代理服務器發送請求到互聯網上的服務器,代理服務器通常做用在客戶端。運維
反向代理服務器做用在服務器端,它在服務器端接收客戶端的請求,而後將請求分發給具體的服務器進行處理,而後再將服務器的相應結果反饋給客戶端。ide
一、Web服務器:提供Http的訪問memcached
二、應用程序服務器:可以用於應用程序的運行;
三、代理服務器:代理服務器一般是客戶端訪問的一種行爲
四、反向代理:分發請求,工做在服務端
五、後臺服務器:名字叫法
六、CDN緩存服務器:CDN是構建在網絡之上的內容分發網絡,依靠部署在各地的邊緣服務器,經過中心平臺的負載均衡、內容分發、調度等功能模塊,使用戶就近獲取所需內容,下降網絡擁塞,提升用戶訪問響應速度和命中率。CDN的關鍵技術主要有內容存儲和分發技術。CDN的基本原理是普遍採用各類緩存服務器,將這些緩存服務器分佈到用戶訪問相對集中的地區或網絡中,在用戶訪問網站時,利用全局負載技術將用戶的訪問指向距離最近的工做正常的緩存服務器上,由緩存服務器直接響應用戶請求。
項目的開發過程當中,主要是使用Nginx和Tomcat來搭建高性能負載均衡集羣,即便用Nginx的反向代理功能來實現請求的分發
Tengine的特性:
1.繼承Nginx-1.4.7的全部特性,100%兼容Nginx的配置;
2.動態模塊加載(DSO)支持。加入一個模塊再也不須要從新編譯整個Tengine;
3.支持SPDY v3協議,自動檢測同一端口的SPDY請求和HTTP請求;
4.流式上傳到HTTP後端服務器或FastCGI服務器,大量減小機器的I/O壓力;
5.更增強大的負載均衡能力,包括一致性hash模塊、會話保持模塊,還能夠對後端的服務器進行主動健康檢查,根據服務器狀態自動上線下線;
6.輸入過濾器機制支持。經過使用這種機制Web應用防火牆的編寫更爲方便;
7.支持設置proxy、memcached、fastcgi、scgi、uwsgi在後端失敗時的重試次數
8.動態腳本語言Lua支持。擴展功能很是高效簡單;
9.支持管道(pipe)和syslog(本地和遠端)形式的日誌以及日誌抽樣;
10.支持按指定關鍵字(域名,url等)收集Tengine運行狀態;
11.組合多個CSS、JavaScript文件的訪問請求變成一個請求;
12.自動去除空白字符和註釋從而減少頁面的體積
13.自動根據CPU數目設置進程個數和綁定CPU親緣性;
14.監控系統的負載和資源佔用從而對系統進行保護;
15.顯示對運維人員更友好的出錯信息,便於定位出錯機器;
16.更強大的防***(訪問速度限制)模塊;
17.更方便的命令行參數,如列出編譯的模塊列表、支持的指令等;
18.能夠根據訪問文件類型設置過時時間;