1. 程式人生 > >apache的作用和tomcat的區別

apache的作用和tomcat的區別

經常在用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等。但是不能裝水,要裝水必須要有容器(桶),而這個桶也可以不放在卡車上。