tomcat 與 nginx,Apache HTTP Server Project的區別

來源:互聯網
上載者:User
這篇文章主要介紹了關於tomcat 與 nginx,Apache HTTP Server Project的區別,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

Apache,指的是Apache軟體基金會下的一個項目——Apache HTTP Server Project;Nginx同樣也是一款開源的HTTP伺服器軟體(當然它也可以作為郵件Proxy 伺服器、通用的TCPProxy 伺服器)。
HTTP伺服器本質上也是一種應用程式——它通常運行在伺服器之上,綁定伺服器的IP地址並監聽某一個tcp連接埠來接收並處理HTTP請求,這樣用戶端(一般來說是IE, Firefox,Chrome這樣的瀏覽器)就能夠通過HTTP協議來擷取伺服器上的網頁(HTML格式)、文檔(PDF格式)、音頻(MP4格式)、視頻(MOV格式)等等資源。
描述的就是這一過程:

不僅僅是Apache HTTP Server和Nginx,絕大多數程式設計語言所包含的類庫中也都實現了簡單的HTTP伺服器方便開發人員使用:HttpServer (Java HTTP Server )Python SimpleHTTPServer使用這些類庫能夠非常容易的運行一個HTTP伺服器,它們都能夠通過綁定IP地址並監聽tcp連接埠來提供HTTP服務。
Apache Tomcat則是Apache基金會下的另外一個項目,與Apache HTTP Server相比,Tomcat能夠動態產生資源並返回到用戶端。Apache HTTP Server和Nginx都能夠將某一個文字檔的內容通過HTTP協議返回到用戶端,但是這個文字檔的內容是固定的——也就是說無論何時、任何人訪問它得到的內容都是完全相同的,這樣的資源我們稱之為靜態資源
動態資源則與之相反,在不同的時間、不同的用戶端訪問得到的內容是不同的,例如:包含顯示目前時間的頁面顯示當前IP地址的頁面Apache HTTP Server和Nginx本身不支援產生動態網頁面,但它們可以通過其他模組來支援(例如通過Shell、PHP、Python指令碼程式來動態產生內容)。如果想要使用Java程式來動態產生資源內容,使用這一類HTTP伺服器很難做到。Java Servlet技術以及衍生的Java Server Pages技術可以讓Java程式也具有處理HTTP請求並且返回內容(由程式動態控制)的能力,Tomcat正是支援運行Servlet/JSP應用程式的容器(Container):

Tomcat運行在JVM之上,它和HTTP伺服器一樣,綁定IP地址並監聽TCP連接埠,同時還包含以下指責:

  • 管理Servlet程式的生命週期

  • 將URL映射到指定的Servlet進行處理

  • 與Servlet程式合作處理HTTP請求——根據HTTP請求產生HttpServletResponse對象並傳遞給Servlet進行處理,將Servlet中的HttpServletResponse對象產生的內容返回給瀏覽器

雖然Tomcat也可以認為是HTTP伺服器,但通常它仍然會和Nginx配合在一起使用:動靜態資源分離——運用Nginx的反向 Proxy功能分發請求:所有動態資源的請求交給Tomcat,而靜態資源的請求(例片、視頻、CSS、JavaScript檔案等)則直接由Nginx返回到瀏覽器,這樣能大大減輕Tomcat的壓力。負載平衡,當業務壓力增大時,可能一個Tomcat的執行個體不足以處理,那麼這時可以啟動多個Tomcat執行個體進行水平擴充,而Nginx的負載平衡功能可以把請求通過演算法分發到各個不同的執行個體進行處理。

以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.