經常在用apache和tomcat等這些伺服器,可是總感覺還是不清楚他們之間有什麼關系,在用tomcat的時候總出現apache,總感到迷惑,到底誰是主誰是次,是以特意在網上查詢了一些這方面的資料,總結了一下:
解析一
apache支援靜态頁,tomcat支援動态的,比如servlet等,
一般使用apache+tomcat的話,apache隻是作為一個轉發,對jsp的處理是由tomcat來處理的。
apche可以支援php/cgi/perl,但是要使用java的話,你需要tomcat在apache背景支撐,将java請求由apache轉發給tomcat處理。
apache是web伺服器,tomcat是應用(java)伺服器,它隻是一個servlet(jsp也翻譯成servlet)容器,可以認為是apache的擴充,但是可以獨立于apache運作。
這兩個有以下幾點可以比較的:
1、兩者都是apache組織開發的
2、兩者都有HTTP服務的功能
3、兩者都是免費的
不同點:
Apache是專門用了提供HTTP服務的,以及相關配置的(例如虛拟主機、URL轉發等等)
Tomcat是Apache組織在符合J2EE的JSP、Servlet标準下開發的一個JSP伺服器
Runtime r=Runtime.getRuntime();
Process p=null;
try
{
p=r.exec("notepad");
}
catch(Exception ex)
{
System.out.println("fffff");
}
解析二:
APACHE是一個web伺服器環境程式 啟用他可以作為web伺服器使用不過隻支援靜态網頁 如(asp,php,cgi,jsp)等動态網頁的就不行
如果要在APACHE環境下運作jsp 的話就需要一個解釋器來執行jsp網頁而這個jsp解釋器就是TOMCAT, 為什麼還要JDK呢?因為jsp需要連接配接資料庫的話就要jdk來提供連接配接資料庫的驅程,是以要運作jsp的web伺服器平台就需要APACHE+TOMCAT+JDK
整合的好處是:
如果用戶端請求的是靜态頁面,則隻需要Apache伺服器響應請求
如果用戶端請求動态頁面,則是Tomcat伺服器響應請求
因為jsp是伺服器端解釋代碼的,這樣整合就可以減少Tomcat的服務開銷
C是一個結構化語言,如譚老爺子所說:它的重點在于算法和資料結構。C程式的設計首要考慮的是如何通過一個過程,對輸入(或環境條件)進行運算處理得到輸出(或實作過程(事務)控制),而對于C++,首要考慮的是如何構造一個對象模型,讓這個模型能夠契合與之對應的問題域,這樣就可以通過擷取對象的狀态資訊得到輸出或實作過程(事務)控制。
解析三:
apache:側重于http server
tomcat:側重于servlet引擎,如果以standalone方式運作,功能上與apache等效, 支援JSP,但對靜态網頁不太理想;
apache是web伺服器,tomcat是應用(java)伺服器,它隻是一個servlet(jsp也翻譯成servlet)容器,可以認為是apache的擴充,但是可以獨立于apache運作。
換句話說,apache是一輛卡車,上面可以裝一些東西如html等。但是不能裝水,要裝水必須要有容器(桶),而這個桶也可以不放在卡車上。