Apache/Tomcat/JBOSS/Nginx區別
先說Apache和Tomcat的區別:
Apache是世界使用排名第一的Web伺服器軟體。它可以執行在幾乎所有廣泛使用的計算機平臺上,由於其跨平臺和安全性被廣泛使用,是最流行的Web伺服器端軟體之一。 在Apache基金會裡面ApacheServer永遠會被賦予最大的支援,畢竟大兒子最親嘛,而Apache的開源伺服器軟體Tomcat同樣值得關注,畢竟Tomcat是開源免費的產品,使用者會給予最大的支援。但是經常在用Apache和Tomcat等這些伺服器時,你總感覺還是不清楚他們之間有什麼關係,在用Tomcat的時候總出現Apache,總感到迷惑,到底誰是主誰是次,因此特意在網上查詢了一些這方面的資料,總結了一下。
這兩個有以下幾點可以比較的:◆兩者都是Apache組織開發的
Runtime r=Runtime.getRuntime(); Process p=null; try { p=r.exec("notepad"); } catch(Exceptionex) { System.out.println("fffff"); }
解析二:Apache是一個Web伺服器環境程式,啟用他可以作為Web伺服器使用,不過只支援靜態網頁
Tomcat:側重於Servlet引擎,如果以Standalone方式執行,功能上與Apache等效,支援JSP,但對靜態網頁不太理想;Apache是Web伺服器,Tomcat是應用(Java)伺服器,它只是一個Servlet(JSP也翻譯成Servlet)容器,可以認為是Apache的擴充套件,但是可以獨立於Apache執行。
PS:至於為什麼要整合Tomcat和Apache,原因是
Tomcat的最主要的功能是提供Servlet/JSP容器,儘管它也可以作為獨立的Java Web 服
務器,但在對靜態資源(如HTML 檔案或影象檔案)的處理速度,以及提供的Web 伺服器
管理功能方面Tomcat都不如其他專業的HTTP伺服器,如IIS和Apache伺服器。
因此在實際應用中,常常把Tomcat 與其他HTTP 伺服器整合。對於不支援Servlet/JSP
的HTTP伺服器,可以通過Tomcat伺服器來執行Servlet/JSP元件。
當Tomcat與其他HTTP伺服器整合時,Tomcat伺服器的工作模式通常為程序外的Servlet
容器,Tomcat 伺服器與其他HTTP 伺服器之間通過專門的外掛來通訊。
1.1)獨立的Servlet容器在這種模式下,Tomcat可以作為獨立的Java Web伺服器,Servlet容器作為構成Web伺服器的一部分而存在。獨立的Servlet容器是Tomcat的預設模式
23.2)程序內的Servlet容器
Servlet容器分為Web伺服器外掛和Java容器兩部分。Web伺服器外掛在其他Web伺服器內部地址空間開啟一個Java虛擬機器,Java容器在此JVM中執行Servlet。如有客戶端發出呼叫Servlet的請求,外掛獲得對此請求的控制並將它傳遞給Java容器。程序內Servlet容器對於單程序、多程序的伺服器非常適合,可以提供較高的執行速度,單缺乏伸縮性。
4.5.3)程序外的Servlet容器
Servlet容器分為Web伺服器外掛和java容器兩部分。Web伺服器外掛在其他Web伺服器的外部地址空間開啟一個JVM。java容器在此JVM中執行Servlet。如有客戶端發出呼叫Servlet的請求,外掛獲得對此請求的控制並將它傳遞給java容器。程序外Servlet容器對客戶請求的響應速度不如程序內容器,但程序外容器具有更好的伸縮性和穩定性。
Tomcat既可作為獨立的Servlet容器,也可和其他的Web伺服器整合,作為程序內的Servlet容器或者程序外的Servlet容器。在說Tomcat和Jetty的區別:
Tomcat 伺服器是一個免費的開放原始碼的Web 應用伺服器(主要用於解析servlet/JSP,同時具備http服務),技術先進、效能穩定,而且免費,因而深受Java 愛好者的喜愛並得到了部分軟體開發商的認可。其執行時佔用的系統資源小,擴充套件性好,且支援負載平衡與郵件服務等開發應用系統常用的功能。作為一個小型的輕量級應用伺服器,Tomcat在中小型系統和併發訪問使用者不是很多的場合下被普遍使用,成為目前比較流行的Web 應用伺服器。 而Jetty採用業界最優的開源Java Web引擎,將Java社群中下載量最大,使用者數最多,標準支援最完備的Tomcat核心作為其Servlet容器引擎,並加以稽核和調優。單純的Tomcat效能有限,在很多地方表現有欠缺,如活動連線支援、靜態內容、大檔案和HTTPS等。除了效能問題,Tomcat的另一大缺點是它是一個受限的整合平臺,僅能執行Java應用程式。企業在使用時Tomcat,往往還需同時部署Apache WebServer以與之整合。此配置較為繁瑣,且不能保證效能的優越性。Jetty通過使用APR和Tomcat本地技術的混合模型來解決Tomcat的諸多不足。混合技術模型從最新的作業系統技術裡提供了最好的執行緒和事件處理。結果,Jetty達到了可擴充套件性,效能引數匹配甚至超越了本地Apache HTTP伺服器或者IIS。譬如Jetty能夠提供資料庫連線池服務,不僅支援 JSP 等 Java 技術,同時還支援其他 Web 技術的整合,譬如PHP、.NET 兩大陣營。 標準化是減小技術依賴風險,保護投資最好的方式。Jerry率先支援全系列JEE Web標準,從根本上保證了應用“一次開發,到處執行”的特點,使應用成品能方便地在Jetty和其他Java Web伺服器之間輕易遷移。
相同點:
都是web容器,作用基本一致,都作為jboss的整合的web容器(有tomcat版的jboss、也有jetty版的jboss,即4.0以後的版本)
區別:
實現機制稍有不同,Jetty效能更優
Nginx / Apache/ lighttpd 的區別:
1. lighttpd
Lighttpd是一個具有非常低的記憶體開銷,cpu佔用率低,效能好,以及豐富的模組等特點。lighttpd是眾多OpenSource輕量級的web server中較為優秀的一個。支援FastCGI, CGI, Auth, 輸出壓縮(outputcompress), URL重寫, Alias等重要功能。
Lighttpd使用fastcgi方式執行php,它會使用很少的PHP程序響應很大的併發量。
Fastcgi的優點在於:
· 從穩定性上看, fastcgi是以獨立的程序池執行來cgi,單獨一個程序死掉,系統可以很輕易的丟棄,然後重新分配新的程序來執行邏輯.
· 從安全性上看, fastcgi和宿主的server完全獨立, fastcgi怎麼down也不會把server搞垮,
· 從效能上看, fastcgi把動態邏輯的處理從server中分離出來, 大負荷的IO處理還是留給宿主server, 這樣宿主server可以一心一意作IO,對於一個普通的動態網頁來說, 邏輯處理可能只有一小部分, 大量的圖片等靜態IO處理完全不需要邏輯程式的參與(注1)
· 從擴充套件性上講, fastcgi是一箇中立的技術標準, 完全可以支援任何語言寫的處理程式(php,java,Python...)
2.apache
apache是世界排名第一的web伺服器, 根據netcraft(www.netsraft.co.uk)所作的調查,世界上百分之五十以上的web伺服器在使用apache.
1995年4月, 最早的apache(0.6.2版)由apache group公佈發行. apache group 是一個完全通過internet進行運作的非盈利機構, 由它來決定apache web伺服器的標準發行版中應該包含哪些內容. 准許任何人修改隱錯, 提供新的特徵和將它移植到新的平臺上, 以及其它的工作. 當新的程式碼被提交給apache group時, 該團體稽核它的具體內容, 進行測試, 如果認為滿意, 該程式碼就會被整合到apache的主要發行版中.
apache 的特性:
1) 幾乎可以執行在所有的計算機平臺上.
2) 支援最新的http/1.1協議
3) 簡單而且強有力的基於檔案的配置(httpd.conf).
4) 支援通用閘道器介面(cgi)
5) 支援虛擬主機.
6) 支援http認證.
7) 整合perl.
8) 整合的代理伺服器
9) 可以通過web瀏覽器監視伺服器的狀態, 可以自定義日誌.
10) 支援伺服器端包含命令(ssi).
11) 支援安全socket層(ssl).
12) 具有使用者會話過程的跟蹤能力.
13) 支援fastcgi
14) 支援java servlets
3.nginx
Nginx是俄羅斯人編寫的十分輕量級的HTTP伺服器,Nginx,它的發音為“engine X”,是一個高效能的HTTP和反向代理伺服器,同時也是一個IMAP/POP3/SMTP 代理伺服器.Nginx是由俄羅斯人 Igor Sysoev為俄羅斯訪問量第二的Rambler.ru站點開發.
Nginx以事件驅動的方式編寫,所以有非常好的效能,同時也是一個非常高效的反向代理、負載平衡。其擁有匹配Lighttpd的效能,同時還沒有Lighttpd的記憶體洩漏問題,而且Lighttpd的mod_proxy也有一些問題並且很久沒有更新。但是Nginx並不支援cgi方式執行,原因是可以減少因此帶來的一些程式上的漏洞。所以必須使用FastCGI方式來執行PHP程式。
nginx做為HTTP伺服器,有以下幾項基本特性:
處理靜態檔案,索引檔案以及自動索引;開啟檔案描述符緩衝.
無快取的反向代理加速,簡單的負載均衡和容錯.
FastCGI,簡單的負載均衡和容錯.
模組化的結構。包括gzipping, byteranges, chunked responses,以及 SSI-filter等filter。如果由FastCGI或其它代理伺服器處理單頁中存在的多個SSI,則這項處理可以並行執行,而不需要相互等待。
Nginx專為效能優化而開發,效能是其最重要的考量,實現上非常注重效率。它支援核心Poll模型,能經受高負載的考驗,有報告表明能支援高達 50,000個併發連線數。
Nginx
相關推薦
Apache/Tomcat/JBOSS/Nginx區別
先說Apache和Tomcat的區別: Apache是世界使用排名第一的Web伺服器軟體。它可以執行在幾乎所有廣泛使用的計算機平臺上,由於其跨平臺和安全性被廣泛使用,是最流行的Web伺服器端軟體之一。 在Apache基金會裡面ApacheServer永遠會被賦予最大的支援,畢竟大兒子最親嘛,而Apac
Apache/Tomcat/JBOSS/Jetty/Nginx區別 與選擇
總結:Apache/Tomcat/JBOSS/Nginx區別 . 1、Apache是Web伺服器,Tomcat是應用(Java)伺服器。Tomcat在中小型系統和併發訪問使用者不是很多的場合下被普遍使用。Apache支援靜態頁,Tomcat支援動態的。 2、Jetty:T
Tomcat與Nginx區別與各自的用途.
nginx常用做靜態內容服務和反向代理伺服器,以及頁面前端高併發伺服器。適合做負載均衡,直面外來請求轉發給後面的應用服務(tomcat什麼的),tomcat更多用來做做一個應用容器,讓java web app跑在裡面的東西。大部分適用於靜態資原始檔的訪問(圖片,檔案) to
簡析 Tomcat 、Nginx 與 Apache 的區別
簡析 Tomcat 、Nginx 與 Apache 的區別 本文講的是簡析 Tomcat 、Nginx 與Apache的區別, 經常在用 apache 和 tomcat 等這些伺服器,可是總感覺還是不清楚他們之間有什麼關係,在用 tomcat 的時候總出現 apache,總是感到迷惑。這可能是很多初學伺服
Nginx,Apache,Tomcat區別
Nginx:一款能承受高併發的HTTP伺服器,非同步的,多個連線(萬級別)可以對應一個程序,進行響應。基於事件驅動模型。 Nginx優點:負載均衡、反向代理、處理靜態檔案優勢。 &
tomcat 與 nginx,apache的區別?
一般的運用場景下,apache和nginx在負載均衡裡是前端伺服器,用來處理請求的轉發(反向代理等);絕大部分時候他們本身並不會執行專案。tomcat和jetty,WebLogic是後端伺服器,是直接用來執行專案的容器。 簡單來說就是你發出一個請求,先經過apache或nginx,他們會合理地把請求分配到
Nginx,Apache和Tomcat之間的區別
嚴格的來說,Apache/Nginx 應該叫做「HTTP Server」;而 Tomcat 則是一個「Application Server」,或者更準確的來說,是一個「Servlet/JSP」應用的容器(Ruby/Python 等其他語言開發的應用也無法直接執行
環境搭建--apache/tomcat/nginx
nginx -t netstat 80端口 bsp figure net 0.12 生效 spa 一、Apache安裝 1、查詢linux環境上是否安裝了apache rpm -qa httpd 如果沒有顯示,那麽說明系統上沒有安裝 2、使用yum install http
apache php 與nginx php 的區別
css apach stc 必須 靜態文件 ast mod 解釋器 gin apache是通過mod_php來解析php nginx是通過php-fpm(fast-cgi)來解析php 1. PHP 解釋器是否嵌入 Web 服務器進程內部執行 mod_php 通過嵌入
tomcat 與 nginx,apache的區別是什麽?
訪問服務器 代理 edit 資源分離 訪問 nor pac img 衍生 == tomcat 與 nginx,apache的區別是什麽? - 知乎https://www.zhihu.com/question/32212996 Apache HTTP Server
Apache select與Nginx epoll模型區別
Linux服務1.select 和epoll模型區別1.1.網絡IO模型概述通常來說,網絡IO可以抽象成用戶態和內核態之間的數據交換。一次網絡數據讀取操作(read),可以拆分成兩個步驟:1)網卡驅動等待數據準備好(內核態)2)將數據從內核空間拷貝到進程空間(用戶態)。根據這兩個步驟處理方式不一樣,我們通常把
[Linux]php+apache 和 php+nginx的區別
fpm 最大的 生命 請求 結構 所有 apach lin 解釋 apache是通過mod_php來解析php nginx是通過php-fpm(fast-cgi)來解析php1. PHP 解釋器是否嵌入 Web 服務器進程內部執行mod_php 通過嵌入 PHP 解釋器到
web伺服器&應用伺服器(Apache、Tomcat、nginx) Apache HTTP Server,我們常常稱之為httpd,即常說的Apache。它是目前最流行的web伺服器。
現在也沒有特別搞懂他們之間的區別,只是有個大概的理解,可能會有不對的地方,隨時更新吧。 前提得搞明白代理伺服器和反向代理伺服器的區別。 一、web伺服器 Apache HTTP Server,我們常常稱之為httpd,即常說的Apache。它是目前最流行的web伺服器。 Apache
Apache select和Nginx epoll模型區別
部分內容摘自跟老男孩學Linux運維:Web叢集實戰(運維人員必備書籍) /2561410/1752270 1.select 和epoll模型區別 .網絡IO模型概述 通常來說,網絡IO可以抽象成使用者態和核心態之間的資料交換。一次網路資料讀取操作(re
Linux 安裝 mysql、apache、php、tomcat、nginx
Mysql 1、檢查安裝: 因為mysql資料庫在Linux上實在是太流行了,所以目前下載的主流Linux系統版本基本上都集成了mysql資料庫在裡面,我們可以通過如下命令來檢視我們的作業系統上是否已經安裝了mysql資料庫 [[email protected
Apache HTTP Server vs Apache Tomcat;Apache vs Nginx;Tomcat vs Weblogic/Webspere
Apache HTTP Server vs Apache Tomcat 來源: 知乎:tomcat 與 nginx,apache的區別是什麼? 嚴格的來說,Apache/Nginx 應該叫做「HTTP Server」;而 Tomca
tomcat 與 nginx,apache的區別是什麼
作者:知乎使用者 連結:https://www.zhihu.com/question/32212996/answer/87524617 來源:知乎 著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。 題主說的Apache,指的應該是Apache軟體基金
tomcat 與 nginx,apache的區別是什麼?
Web Server 的概念太寬泛了。 嚴格的來說,Apache/Nginx 應該叫做「HTTP Server」;而 Tomcat 則是一個「Application Server」,或者更準確的來說,是一個「Servlet/JSP」應用的容器(Ruby/Python 等其他語言開發的應用也無法直接執行在
Apache Tomcat Nginx
-a work int 隱藏版本號 cto page live str 申請 -------------------------------------------------------------------------------- Ap
HAProxy與Nginx區別
時間 請求 也會 維護 異常 會有 訪問 haproxy 失敗 1)HAProxy對於後端服務器一直在做健康檢測(就算請求沒過來的時候也會做健康檢查):後端機器故障發生在請求還沒到來的時候,haproxy會將這臺故障機切掉,但如果後端機器故障發生在請求到達期間,那麽前端訪問