1. 程式人生 > >【轉】JBoss Web和Tomcat的區別

【轉】JBoss Web和Tomcat的區別

在Web2.0的時代,基於Tomcat核心的JBoss在J2EE應用伺服器領域已成為發展最為迅速的應用伺服器。這一青出於藍而勝於藍的產品與Tomcat的區別又在哪裡?

基於Tomcat核心,青勝於藍

Tomcat 伺服器是一個免費的開放原始碼的Web應用伺服器,技術先進、效能穩定,而且免費,因而深受Java 愛好者的喜愛並得到了部分軟體開發商的認可。其執行時佔用的系統資源小,擴充套件性好,且支援負載平衡與郵件服務等開發應用系統常用的功能。作為一個小型的輕 量級應用伺服器,Tomcat在中小型系統和併發訪問使用者不是很多的場合下被普遍使用,成為目前比較流行的Web 應用伺服器。

而JBoss Web採用業界最優的開源Java Web引擎,將Java社群中下載量最大,使用者數最多,標準支援最完備的Tomcat核心作為其Servlet容器引擎,並加以稽核和調優。單純的 Tomcat效能有限,在很多地方表現有欠缺,如活動連線支援、靜態內容、大檔案和HTTPS等。除了效能問題,Tomcat的另一大缺點是它是一個受限 的整合平臺,僅能執行Java應用程式。企業在使用時Tomcat,往往還需同時部署Apache Web Server以與之整合。此配置較為繁瑣,且不能保證效能的優越性。

JBoss在Tomcat的基礎上,對其進行本地化,將Tomcat 以內嵌的方式整合到 JBoss 中。JBoss Web通過使用APR和Tomcat本地技術的混合模型來解決Tomcat的諸多不足。混合技術模型從最新的作業系統技術裡提供了最好的執行緒和事件處理。 結果,JBoss Web達到了可擴充套件性,效能引數匹配甚至超越了本地Apache HTTP伺服器或者IIS。譬如JBoss Web能夠提供資料庫連線池服務,不僅支援 JSP 等 Java 技術,同時還支援其他 Web 技術的整合,譬如 PHP、.NET 兩大陣營。

標準化是減小技術依賴風險,保護投資最好的方式。JBoss Web率先支援全系列JEE Web標準,從根本上保證了應用“一次開發,到處執行”的特點,使應用成品能方便地在JBoss Web和其他Java Web伺服器之間輕易遷移。

集多功能於一身,效能卓越


作為Web 應用伺服器中的明星產品,JBoss Web伺服器集多種功能於一身。其關鍵功能包括:完全支援Java EE、高度的擴充套件性、快速的靜態內容處理、群集、OpenSSL、URL重寫和綜合性。

JBoss Web伺服器具有原生特性和強大的可擴充套件性,可支援多種並非基於Java的伺服器內容處理技術,可同時執行JSP, Servlet, Microsoft .NET , PHP 及 CGI,為其提供一個單一的、高效能的企業級部署平臺。

與Tomcat 相比,JBoss Web在靜態資源訪問方面效能優越。JBoss Web支援兩種元件模式——純Java和Native I/O。在Native元件的支援下,動態執行不會受到任何影響,而靜態資源的訪問利用了作業系統本身提供的0拷貝傳送,CPU消耗降低,響應時間縮短, 吞吐率大大提高,混合的連線模式支援最大達到10000個併發客戶端的同時訪問,與Apache Web伺服器相當。部署於高效能的作業系統,可利用JBoss Web對純Java和Native I/O兩種模式的支援,使得應用在開發時可隨時跨平臺敏捷遷移,而部署於高效能的作業系統相關的Native環境。由於JBoss Web較好地解決了靜態資源的訪問效能問題,可在解決方案中把它直接作為強大的LVS的分發物件,和RHEL負載均衡系統結合,形成理論上無限線性擴充套件的 負載均衡場景。

OpenSSL是業界最為快速和安全的開源傳輸元件,可藉助作業系統和硬體的特性實現高效的安全承載。JBoss Web集成了OpenSSL,可提供高效的安全傳輸服務,使得安全機制更上臺階。研究表明, JBoss Web中的SSL效能比單純的Tomcat快四倍。

相關推薦

JBoss WebTomcat區別

在Web2.0的時代,基於Tomcat核心的JBoss在J2EE應用伺服器領域已成為發展最為迅速的應用伺服器。這一青出於藍而勝於藍的產品與Tomcat的區別又在哪裡?基於Tomcat核心,青勝於藍 Tomcat 伺服器是一個免費的開放原始碼的Web應用伺服器,技術先進、效能穩定,而且免費,因而深受Java

Visual C++ C++ 有什麽區別

業界 流行 編譯器 gtk+ 語言 開發 多種實現 廠商 計算 有位同學問我“Visual C++和C++有什麽區別?”,這的確是初學者會感到困惑的問題,比較常見。除此之外,還有“先學C++好,還是先學Visual C++好?”,都屬於同樣的概念不明的問題,就比

jar包war包的介紹區別

lac rep 理解 j2e 浪費時間 需要 適合 格式 nbsp JavaSE程序可以打包成Jar包(J其實可以理解為Java了),而JavaWeb程序可以打包成war包(w其實可以理解為Web了)。然後把war發布到Tomcat的webapps目錄下,Tomcat會在啟

abstract classinterface的區別

其中 帶來 靜態 進行 都沒有 無需 bstr 價值 bastract 在編程語言中,abstract class和interface是支持抽象類定義的兩種機制。abstract class和interface之間在對於抽象類定義的支持方面具有很大的相似性,甚至可以相互替

document.documentElementdocument.body的區別

指定 absolut root pos absolute 使用 對象 但是 height 網頁中獲取滾動條卷去部分的高度,可以通過 document.body.scrollTop 來獲取,比如使div跟著滾動條滾動: <div id="div" style="wi

認證 (authentication) 授權 (authorization) 的區別

這就是 飛機 登陸 簡單 輸入 區別 認證 的區別 auth 以前一直分不清 authentication 和 authorization,其實很簡單,舉個例子來說: 你要登機,你需要出示你的身份證和機票,身份證是為了證明你張三確實是你張三,這就是 authenticati

Buffer cachepage cache的區別

轉自:http://alanwu.blog.51cto.com/3652632/1122077 Page cache和buffer cache到底有什麼區別呢?很多時候我們不知道系統在做IO操作的時候到底是走了page cache還是buffer cache?其實

JBoss Web Tomcat區別

jboss與tomcat的使用經驗總結· 一:jboss簡介    jboss是一套可以基於j2ee框架的全套解決方案,他包括JBoss/Server,JBoss/spyderMQ, JBoss/Jaws,JBoss/Zola,JBoss/Zoap,JBoss/Castor,JBoss/Tomcat。這些產品

關於LIS一類可以用樹狀數組優化的DP 預備知識

免費 關註 最長上升子序列 2.3 bzoj1264 一個數 long 個數字 等於 原文鏈接 http://www.cnblogs.com/liu-runda/p/6193690.html 預備知識     DP(Dynamic Programming)

理解Callable Spring DeferredResult

控制 defer -a word int https .html getc when http://www.cnblogs.com/aheizi/p/5659030.html 1-介紹 Servlet 3中的異步支持為在另一個線程中處理HTTP請求提供了可能性。當

Spark StreamingKafka整合開發指南

thread ada 關系 方法 拷貝 理解 1.2 reduce arr 基於Receivers的方法 這個方法使用了Receivers來接收數據。Receivers的實現使用到Kafka高層次的消費者API。對於所有的Receivers,接收到的數據將會保存在Spark

簡述CC++的學習歷程

cnblogs 習慣 使用 模板 服務器 網絡 log 消息 面向對象 簡述C和C++的學習歷程(轉)                                                     ——by:肖舸老師總是被同學們問到,如何學習C和C++才不茫然

setup timehold time的周期問題(slack)

logic 默認 概念理解 CI report -s 不同的 都是 capture 為什麽計算setup time的slack時需要考慮加周期,hold time時不需要? 總結一: 因為計算setup time時,由於存在數據傳輸data delay,Launch edg

子類父類實現同一個接口的意義

style inf bottom 父類 100% csdn 一個 article mage 原文作者的疑惑和我的一模一樣...所以沒什麽好解釋的,直接截圖參考即可。原文鏈接:子類和父類實現同一個接口的意義 - CSDN博客 https://blog.csdn.net/s33

Session Cookie Token的區別

策略 沒有 安全 字符 瓶頸 匯編 下一個 emca 十六進制 Cookie cookie 是一個非常具體的東西,指的就是瀏覽器裏面能永久存儲的一種數據,僅僅是瀏覽器實現的一種數據存儲功能。 cookie由服務器生成,發送給瀏覽器,瀏覽器把cookie以kv形式保存到某個目

理解WebKitChromium: JavaScript引擎簡介

正則表達 根據 tco 抽象 由於 介紹 後來 rom 都在 轉載請註明原文地址:http://blog.csdn.net/milado_nju1. 什麽是JavaScript引擎什麽是JavaScript引擎?簡單來講,就是能夠提供執行JavaScript代碼的運行環境。

通過ionicenice降低shell指令碼執行的優先順序

對於一些執行時會造成系統滿載的指令碼, 例如資料庫備份, 會影響當時其他服務的響應速度, 可以通過ionice和nice對其IO優先順序和CPU優先順序進行調整例如降低"/usr/local/bin/backup.sh"的IO優先順序, 讓其他程序順暢執行: /usr/bin/ionice -c2 -

系統呼叫庫函式以及API

         在寫程式的過程中,像MFC,VC++這些程式設計,都會涉及到函式的呼叫,有庫函式也有系統函式,下面看一看它們的區別!!            系統呼叫(system

HTTP與HTTPS的區別

 超文字傳輸協議HTTP協議被用於在Web瀏覽器和網站伺服器之間傳遞資訊,HTTP協議以明文方式傳送內容,不提供任何方式的資料加密,如果攻擊者截取了Web瀏覽器和網站伺服器之間的傳輸報文,就可以直接讀懂其中的資訊,因此,HTTP協議不適合傳輸一些敏感資訊,比如:信用卡號、密碼等支付資訊。  

字串字元陣列字串區別詳解

C 語言中並不存在字串這個資料型別,而是使用字元陣列來儲存字串。那麼,字元陣列就一定是字串嗎? 對於這個問題,大多教科書中的回答是“是”。其實不然,字元陣列和字串是完全不相同的兩個概念,千萬不要混淆。分析如下所示的示例程式碼。 1 #include <stdio.h> 2 #incl