總結(jié):Apache/Tomcat/JBOSS/Nginx區(qū)別 .
1、Apache是Web服務(wù)器,Tomcat是應(yīng)用(Java)服務(wù)器。Tomcat在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用。Apache支持靜態(tài)頁(yè),Tomcat支持動(dòng)態(tài)的。
2、Jetty:Tomcat內(nèi)核作為其Servlet容器引擎,并加以審核和調(diào)優(yōu).大中型系統(tǒng)可以應(yīng)用。能夠提供數(shù)據(jù)庫(kù)連接池服務(wù),還支持其他 Web 技術(shù)的集成,譬如PHP、.NET 兩大陣營(yíng).
3、JBoss是一個(gè)管理EJB的容器和服務(wù)器,但JBoss核心服務(wù)不包括支持servlet/JSP的WEB容器,一般與Tomcat或Jetty綁定使用。
4、Nginx是目前性能最高的HTTP服務(wù)器。其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng)。Nginx代碼完全用C語(yǔ)言從頭寫(xiě)成。
所以:Apache--Nginx;Tomcat--Jetty;JBoss。這三組可以組合了。
具體描述:
一、Apache+Tomcat
Apache支持靜態(tài)頁(yè),Tomcat支持動(dòng)態(tài)的,比如Servlet等,
一般使用Apache+Tomcat的話,Apache只是作為一個(gè)轉(zhuǎn)發(fā),對(duì)JSP的處理是由Tomcat來(lái)處理的。
Apche可以支持PHPcgiperl,但是要使用Java的話,你需要Tomcat在Apache后臺(tái)支撐,將Java請(qǐng)求由Apache轉(zhuǎn)發(fā)給Tomcat處理。
Apache是Web服務(wù)器,Tomcat是應(yīng)用(Java)服務(wù)器,它只是一個(gè)Servlet(JSP也翻譯成Servlet)容器,可以認(rèn)為是Apache的擴(kuò)展,但是可以獨(dú)立于Apache運(yùn)行。
這兩個(gè)有以下幾點(diǎn)可以比較的:
◆兩者都是Apache組織開(kāi)發(fā)的
◆兩者都有HTTP服務(wù)的功能
◆兩者都是免費(fèi)的
不同點(diǎn):
Apache是專門(mén)用了提供HTTP服務(wù)的,以及相關(guān)配置的(例如虛擬主機(jī)、URL轉(zhuǎn)發(fā)等等)
Tomcat是符合Java EE的JSP、Servlet標(biāo)準(zhǔn)下開(kāi)發(fā)的一個(gè)JSP服務(wù)器:Tomcat在中小型系統(tǒng)和并發(fā)訪問(wèn)用戶不是很多的場(chǎng)合下被普遍使用。
二、Jetty
而Jetty采用業(yè)界最優(yōu)的開(kāi)源Java Web引擎,將Java社區(qū)中下載量最大,用戶數(shù)最多,標(biāo)準(zhǔn)支持最完備的Tomcat內(nèi)核作為其Servlet容器引擎,并加以審核和調(diào)優(yōu)。單純的Tomcat性能有限,在很多地方表現(xiàn)有欠缺,如活動(dòng)連接支持、靜態(tài)內(nèi)容、大文件和HTTPS等。除了性能問(wèn)題,Tomcat的另一大缺點(diǎn)是它是一個(gè)受限的集成平臺(tái),僅能運(yùn)行Java應(yīng)用程序。企業(yè)在使用時(shí)Tomcat,往往還需同時(shí)部署Apache WebServer以與之整合。此配置較為繁瑣,且不能保證性能的優(yōu)越性。
Jetty通過(guò)使用APR和Tomcat本地技術(shù)的混合模型來(lái)解決Tomcat的諸多不足?;旌霞夹g(shù)模型從最新的操作系統(tǒng)技術(shù)里提供了最好的線程和事件處理。結(jié)果,Jetty達(dá)到了可擴(kuò)展性,性能參數(shù)匹配甚至超越了本地Apache HTTP服務(wù)器或者IIS。譬如Jetty能夠提供數(shù)據(jù)庫(kù)連接池服務(wù),不僅支持 JSP 等 Java 技術(shù),同時(shí)還支持其他 Web 技術(shù)的集成,譬如PHP、.NET 兩大陣營(yíng)。
三、Nginx
Nginx具有很高的穩(wěn)定性。其它HTTP服務(wù)器,當(dāng)遇到訪問(wèn)的峰值,或者有人惡意發(fā)起慢速連接時(shí),也很可能會(huì)導(dǎo)致服務(wù)器物理內(nèi)存耗盡頻繁交換,失去響應(yīng),只能重啟服務(wù)器。例如當(dāng)前apache一旦上到200個(gè)以上進(jìn)程,web響應(yīng)速度就明顯非常緩慢了。而Nginx采取了分階段資源分配技術(shù),使得它的CPU與內(nèi)存占用率非常低。nginx官方表示保持10,000個(gè)沒(méi)有活動(dòng)的連接,它只占2.5M內(nèi)存,所以類似DOS這樣的攻擊對(duì)nginx來(lái)說(shuō)基本上是毫無(wú)用處的。就穩(wěn)定性而言,nginx比lighthttpd更勝一籌。
四、JBoss
JBoss一個(gè)基于J2EE的開(kāi)放源代碼的應(yīng)用服務(wù)器.JBoss是一個(gè)管理EJB的容器和服務(wù)器,但JBoss核心服務(wù)不包括支持servlet/JSP的WEB容器,一般與Tomcat或Jetty綁定使用。
JBoss與Web服務(wù)器在同一個(gè)Java虛擬機(jī)中運(yùn)行 JBoss運(yùn)行后后臺(tái)管理界面,Servlet調(diào)用EJB不經(jīng)過(guò)網(wǎng)絡(luò),從而大大提高運(yùn)行效率,提升安全性能。
聯(lián)系客服