簡體   English   中英

是否值得從JBoss 5.1升級到JBoss 7.1

[英]Is it worth upgrading to JBoss 7.1 from JBoss 5.1

目前我們的生產環境運行JBoss 5.1,我們一直在爭論它是否值得遷移到JBoss 7.1。 如果它是一個簡單的服務器升級,那么它不會是一個問題。 但是,不幸的是,我們必須改變配置,這需要付出一些努力。 此外,我們的服務器在一個集群中運行,我讀到JBoss 7.1有更多的集群支持。

它值得與否?

謝謝

我們目前處於相同的情況。

積極方面似乎有很多事情:

  • 我們必須一次遷移5.1。 我們需要完整的配置文件,並沒有那么多的OSS替代品(GlassFish和Geronimo)。 由於PCI-DSS禁止我們使用EoL軟件,因此僅此一點可能會出售遷移。
  • 配置更好,更簡單。 它不再分布在20個XML文件中,您可以在其中配置XML文件中的方面,但只有一個中心位置。 所有端口都配置在一個中心位置,不再有一個轉換server.xml的XSL文件。 您可以在不知道類的實現細節的情況下理解配置文件。 如果您從未配置過JBoss,那么很難理解這一點。
  • EJB遠程處理不再使用每個套接字的線程。
  • 刪除不需要的子系統非常簡單。
  • 類loding模型看起來很清晰,你可以通過jboss-deployment-structure.xml獲得很多控制權
  • EJB客戶端庫看起來更加清理。 它從20個減少到10個JAR,其中一半甚至是OSGi捆綁包(我們的客戶端是Eclipse RCP應用程序)。
  • 雖然我們對Java EE 6用@Singleton bean替換我們的一些SLSB並不感興趣,而我們的一些帶有計時器EJB的SAR肯定看起來很有趣。
  • 更快的啟動和更少的內存使用(至少對於空服務器或小型部署)。 我們還沒有測試過大型部署。
  • 默認情況下,deployments文件夾為空

我們仍需要研究的事情:

  • 我們有點擔心Infinispan的表現。 我們目前使用JBoss Cache的TreeCache API。 雖然有一個適用於Infinispan的適配器提供相同的API,但一些理論測試顯示出更差的寫入性能。 這僅適用於Infinispan的樹API。
  • 不再支持ExternalContext,我們目前使用它來從.bindings文件填充JNDI樹
  • JMX控制台已經不見了,如果你有任何基於它的東西需要調整, 編輯實際上有一個JMX-Console的端口可用AS7-2227

我們不在群集中運行,因此我無法對此發表評論。

對我們來說最大的努力可能是遷移所有與JBoss以某種方式交互的shell腳本(安裝,集成測試......)。

更新

我們已經遷移,絕對值得。 以上幾點的一些更新:

  • 即使是大型部署也很快,只需要很少的調整。
  • 集中式日志記錄(Slf4j,JUL,JCL,Log4j,...)非常好。
  • 7.1有很多錯誤,它對我們來說無法使用,所以我們在7.2 / EAP 6.1上計划進入7.3 / EAP 6.2。 仍有其公平的錯誤,但我們可以解決它們。 我們特別期待管理界面的基於角色的訪問控制,這將允許我們以最小的權限運行我們的腳本。
  • 將不會有支持的GlassFish 4版本,它為生產使用提出了一個很大的問號。
  • EJB遠程安全性的靈活性要低得多。 我們不得不提出一些變通方法,因為之前我們混合了經過身份驗證和未經身份驗證的EJB調用 - 這已經不可能了。
  • JBoss的JEE 6 BOM POM是一個混合包。 理論上它很好,因為它管理所有JEE依賴項的版本。 在實踐中,artifactId中的版本坐標很糟糕,當我們遷移到JEE 7時會很煩人。當你想要為測試包含一個JEE API的實現時,它也沒什么用。
  • Infinispan樹API性能不是問題。
  • 我們用DMR腳本替換了JMX-Console腳本。

更新2

  • 在SSL上使用EJB遠程處理時存在死鎖 即使在EAP 6.2中也存在此死鎖。 我們現在正處於從WildFly向AS 7反向移植的一系列補丁功能的時候。

一切都在為JBoss 5.1.0工作嗎? 你的表現是否可以與你一起生活?

我目前正處於從JBoss 5.1.0GA升級到JBoss 7.1.1的過程中,並不容易。 您基本上是升級到新的應用程序服務器。 你需要為這項努力預算很多錢。

雖然說JBoss 7.1.1與5.1.0相比非常快(至少啟動時間)。 我認為在接下來的6個月(或左右)中,大多數“硬”遷移和過渡問題將在jboss論壇或通過錯誤修復中充實。 此時,如果您想進行遷移,您和您的團隊可以重新評估。

祝好運!

如果您使用SSL,升級的一個優點是JBoss 7.1.1在jdk 1.7上運行,它支持TLS 1.1和1.2,而jdk 1.6僅支持TLS 1.0。 JBoss 5不能在java 1.7上運行,因此您容易受到BEAST攻擊。

無論如何,我等一下。

AS 5是EE5服務器,AS 7.1是EE6服務器(EE6規范於2009年發布)。 這對於一個出色的新運行時環境來說有很多工作,但它不會給你任何熱門的架構可能性。

WildFly 8.0.0.CR1已經到期,而EE7服務器為您帶來了一堆新的有趣的開發可能性,如WebSockets和JAX-RS 2.0( http://www.slideshare.net/dandreadis/2013-11devoxxwild-flybof ) 。 新的管理功能,如單實例修補。 並且不確定AS7-to-WildFly8將是一個超級簡單的遷移,因為引入了主要的新東西,如Undertow而不是JBossWeb / Tomcat。

如果你必須離開,你必須離開 - 如果你繞過死亡的7.x路徑,不要忘記接受改進的7.2.0.Final標簽(比7.1.1好幾百個問題)。 但是如果你認為你現在可以開始使用Beta / CR版本開發/遷移並等待幾個月來制作一個生產穩定的WildFly 8.xx版本,那么你可以在下次重大更新之前保持更長時間。

br,Jens

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM