經(jīng)常在用apache和tomcat等這些服務(wù)器,可是總感覺(jué)還是不清楚他們之間有什么關(guān)系,在用tomcat的時(shí)候總出現(xiàn)apache,總感到迷惑,到底誰(shuí)是主誰(shuí)是次,因此特意在網(wǎng)上查詢(xún)了一些這方面的資料,總結(jié)了一下
一、相同點(diǎn):
1 ) Apache與Tomcat都是Apache開(kāi)源組織開(kāi)發(fā)的
2 ) 用于處理HTTP服務(wù)的項(xiàng)目
3 ) 兩者都是免費(fèi)的,都可以做為獨(dú)立的Web服務(wù)器運(yùn)行。
二、不同點(diǎn):
1 ) Apache是Web服務(wù)器而Tomcat是Java應(yīng)用服務(wù)器。
2 ) Apache服務(wù)器 只處理 靜態(tài)HTML,
3 )tomcat服務(wù)器 靜態(tài)HTML 動(dòng)態(tài) JSP Servlet 都能處理。
一般是把 Apache服務(wù)器 與 tomcat服務(wù)器 搭配在一起用,Apache服務(wù)器 負(fù)責(zé)處理所有 靜態(tài)的 頁(yè)面/圖片 等信息,Tomcat 只處理動(dòng)態(tài)的部分。
4 ) Apache:是C語(yǔ)言實(shí)現(xiàn)的,專(zhuān)門(mén)用來(lái)提供HTTP服務(wù)。
特性:簡(jiǎn)單、速度快、性能穩(wěn)定、可配置(代理)
1、主要用于解析靜態(tài)文本,并發(fā)性能高,側(cè)重于HTTP服務(wù);
2、支持靜態(tài)頁(yè)(HTML),不支持動(dòng)態(tài)請(qǐng)求如:CGI、Servlet/JSP、PHP、ASP等;
3、具有很強(qiáng)的可擴(kuò)展性,可以通過(guò)插件支持PHP,還可以單向Apache連接Tomcat實(shí)現(xiàn)連通;
4、Apache是世界使用排名第一的Web服務(wù)器。
5 ) Tomcat:是Java開(kāi)發(fā)的一個(gè)符合JavaEE的Servlet規(guī)范的JSP服務(wù)器(Servlet容器),是Apache的擴(kuò)展。
特性:免費(fèi)的Java應(yīng)用服務(wù)器
1、主要用于解析JSP/Servlet,側(cè)重于Servlet引擎;
2、支持靜態(tài)頁(yè),但效率沒(méi)有Apache高;支持Servlet、JSP請(qǐng)求;
3、Tomcat本身也內(nèi)置了一個(gè)HTTP服務(wù)器用于支持靜態(tài)內(nèi)容,可以通過(guò)Tomcat的配置管理工具實(shí)現(xiàn)與Apache整合。
三 、 Apache + Tomcat整合后優(yōu)點(diǎn):
如果請(qǐng)求是靜態(tài)網(wǎng)頁(yè)則由Apache處理,并將結(jié)果返回;如果是動(dòng)態(tài)請(qǐng)求,Apache會(huì)將解析工作轉(zhuǎn)發(fā)給Tomcat處理,Tomcat處理后將結(jié)果通過(guò)Apache返回。這樣可以達(dá)到分工合作,實(shí)現(xiàn)負(fù)載遠(yuǎn)衡,提高系統(tǒng)的性能。
apache是web服務(wù)器,tomcat是應(yīng)用(java)服務(wù)器,它只是一個(gè)servlet容器,可以認(rèn)為是apache的擴(kuò)展,也可以獨(dú)立于apache運(yùn)行。
四 、擴(kuò)展:一般創(chuàng)業(yè)初期的公司都采用LAMP搭建平臺(tái)
LAMP指的Linux(操作系統(tǒng))、ApacheHTTP 服務(wù)器,MySQL(有時(shí)也指MariaDB,數(shù)據(jù)庫(kù)軟件) 和PHP(有時(shí)也是指Perl或Python) 的第一個(gè)字母,一般用來(lái)建立web應(yīng)用平臺(tái)。
雖然這些開(kāi)放源代碼程序本身并不是專(zhuān)門(mén)設(shè)計(jì)成同另幾個(gè)程序一起工作的,但由于它們的免費(fèi)和開(kāi)源,這個(gè)組合開(kāi)始流行(大多數(shù)Linux發(fā)行版本捆綁了這些軟件)。當(dāng)一起使用的時(shí)候,它們表現(xiàn)的像一個(gè)具有活力的解決方案包。