首先我們先介紹下apache和apache tomcat
#(推薦教學:apache)
Apache是web伺服器(靜態解析,如HTML),tomcat是java應用伺服器(動態解析,如JSP)
Apache是一款Web伺服器軟體,有多種產品,可以支援SSL技術,支援多個虛擬主機。它快速、可靠且可透過簡單的API擴充,將Perl/Python等解譯器編譯到伺服器中。 Apache的特色是簡單、速度快、效能穩定,並可做代理伺服器來使用。它可以在大多數電腦作業系統中運行,由於其跨平台和安全性被廣泛使用。
Tomcat只是一個servlet(jsp也翻譯成servlet)容器,可以認為是apache的擴展,但是可以獨立於apache運行
Tomcat是Apache 軟體基金會(Apache Software Foundation)的Jakarta計畫中的一個核心項目,由Apache、Sun 和其他一些公司及個人共同開發而成。由於有了Sun 的參與和支持,最新的Servlet 和JSP規格總是能在Tomcat 中得到體現,Tomcat 5支援最新的Servlet 2.4 和JSP 2.0 規格。
Tomcat伺服器是一個免費的開放原始碼的Web應用伺服器,屬於輕量級應用伺服器,在中小型系統和並發存取用戶不是很多的場合下被普遍使用,是開發和調試JSP 程序的首選。
兩者從以下幾點可以比較的:
1、兩者都是apache組織開發的
2、兩者都有HTTP服務的功能
3、兩者都是開源免費的
聯繫:
(1)Apache是普通伺服器,本身只支援html即普通網頁,可以透過外掛程式支持php,還可以與Tomcat連通(Apache單向連接Tomcat,就是說透過Apache可以存取Tomcat資源,反之不然)。
(2)Apache只支援靜態網頁,但像Jsp動態網頁就需要Tomcat來處理。
(3)Apache和Tomcat整合使用
如果客戶端請求的是靜態頁面,則只需要Apache伺服器回應請求;
如果客戶端請求動態頁面,則是Tomcat伺服器回應請求,將解析的JSP等網頁程式碼解析後回傳給Apache伺服器,再經Apache回傳給瀏覽器端。
這是因為jsp是伺服器端解釋程式碼的,Tomcat只做動態程式碼解析,Apache回傳解析好的靜態程式碼,Apache Tomcat這樣整合就可以減少Tomcat的服務開銷。
(4)apache和Tomcat是獨立的,在同一台伺服器上可以整合。
區別:
Apache是有C語言實現的,支援各種特性和模組從而來擴展核心功能;Tomcat是Java編寫的,更好的支援Servlet和JSP。
1、Apache是Web伺服器,Web伺服器傳送(serves)頁面讓瀏覽器可以瀏覽,網頁伺服器專門處理HTTP請求(request),但是應用程式伺服器是透過很多協定來為應用程式提供( serves)商業邏輯(business logic)。
Tomcat是運行在Apache上的應用程式伺服器,應用程式伺服器提供的是客戶端應用程式可以呼叫(call)的方法 (methods)。它只是一個servlet(jsp也翻譯成servlet)容器,可以認為是Apache的擴展,但是可以獨立於apache運作。
2、Apache是普通伺服器,本身只支援html靜態普通網頁。不過可以透過插件支援PHP,還可以與Tomcat連通(單向Apache連接Tomcat,就是說透過Apache可以存取Tomcat資源,反之不然),Tomcat是jsp/servlet容器,同時也支援HTML、JSP、ASP、PHP、 CGI等,其中CGI需要一些手動調試,不過很容易的。
3、Apache專注於http server,Tomcat專注於servlet引擎,如果以standalone方式運行,功能上Tomcat與apache等效支援JSP,但對靜態網頁不太理想。
4、Apache可以運行一年不重啟,穩定性非常好,而Tomcat則不見得。
5.首選web伺服器是Apache,但Apache解析不了的jsp、servlet才用tomcat。
6、Apache是很最開始的頁面解析服務,tomcat是後研發出來的,本質上來說tomcat的功能完全可以取代Apache,但Apache畢竟是tomcat的前輩級人物,並且市場上也有不少人還在用Apache,所以Apache還會繼續存在,不會被取代,apache不能解析java的東西,但解析html速度快。
二者的整合:
Apache是一個web伺服器環境程序,啟用他可以作為web伺服器使用不過只支援靜態網頁,不支援動態網頁,如asp、jsp、php、 cgi
如果要在Apache環境下執行jsp就需要一個解釋器來執行jsp網頁,而這個jsp解釋器就是Tomcat
那為什麼還要JDK呢?因為jsp需要連接資料庫的話就要jdk來提供連接資料庫的驅程,所以要運行jsp的web伺服器平台就需要APACHE TOMCAT JDK
整合的好處:
如果客戶端請求的是靜態頁面,則只需要Apache伺服器回應請求,如果客戶端請求動態頁面,則是Tomcat伺服器回應請求。因為jsp是伺服器端解釋程式碼的,這樣整合就可以減少Tomcat的服務開銷。
以上是apache和apache tomcat有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!