自从我上一个博客以来已经有一段时间了。 我显然忙于其他事情,包括我的主要工作。 在对应用服务器的正确选择提出更多疑问之后,是时候再次讨论这个话题并分享我的想法。

该博客上最常阅读的文章之一是有关选择哪种Java EE 6应用程序服务器的文章 。 我一直在研究很多标准,并根据一个非常基本但通用的模式将不同的认证服务器拆掉。 考虑到每个服务器都应作为OSS和商业支持的变体提供的主要指导原则,本文最后建议同时推荐GlassFish 3和JBoss AS7作为有效选择。 自去年11月更新GlassFish路线图之后,情况似乎已经改变,许多人倾向于接受AS7 / WildFly现在仍然是唯一的选择。 今天,我想将焦点转移到这一点上,并尝试将讨论放回到更具战略意义的背景下,并进一步详细说明对今天的GlassFish与WildFly决定的影响。

Java EE应用程序的基本策略原理

从决定基于Java EE开发新应用程序开始,您已经假设了几件事。 出于某种原因,Java EE被称为行业标准。 这意味着它已被广泛采用,但仍未被诸如DIN / ISO或IEEE等官方标准或标准化组织之一正式捕获。 JCP为它提供规则和规章,并由不同个人和组织的广泛贡献来对其进行管理。 称之为开放行业标准对我来说很常见且有效。 您可以自己权衡两者之间的差异。 原则上, Java EE认证列表为您提供了一系列至少符合所谓的Java EE TCK的不同产品。 对TCK进行了广泛讨论,可以放心地认为它并未完全涵盖所有包含规范的每一行。 但是,每个经过认证的Java EE服务器基本上都应该准备好执行Java EE应用程序。 一次写入-随处运行的原则可以实现(至少在一定程度上)。

您的决定的底线是:避免(供应商)特定功能,并在开放的行业标准上构建新应用程序,该标准可提供灵活性并在不同产品和供应商之间进行选择。

除此之外,您还可以灵活地从提供Java EE技术的技能和服务的众多公司和开发人员中进行选择,从而获得更多价值。

从Java EE 7的角度来看,WildFly 8和GlassFish 4相等

随着WildFly 8 CR1的发布,它通过了Java EE 7 TCK。 即使正式的文书工作显然尚未完全处理,看起来8决赛也将正式获得认证。 至少就Java EE 7技术而言,两个服务器都提供相同的功能。 核心技术堆栈周围始终存在着不同的附加功能,但是我尚未对它们进行完整的功能比较,老实说,我无意这样做。

如果您打算进行绿地开发,请制定自己的决策流程并权衡这些其他指标。您已经是Oracle或Red Hat客户吗? 还是使用其他最适合彼此配合的基础设施组件? 根据我的经验,您还需要权衡其他几个因素(根据我的经验,我们正在谈论> = 30)并相应地对它们进行排名。

从GlassFish 2.x,3.x迁移到4.0?

这些天最常见的问题。 我应该如何处理已在GlassFish 2.x或3.x上运行的应用程序? 它可能是最难的了。 我需要您进一步了解才能回答。

Oracle / GlassFish客户/商店并没有更改任何内容?

您已经在使用Oracle GlassFish Server(商业支持的版本)还是在使用开源版本? 您打算扩展应用程序还是使用新引入的Java EE 7功能? 如果您已经连接到Oracle或商业版本,并且不打算进行任何更改,则基本上不必担心迁移。 根据Oracle终身支持政策 (PDF),将继续支持现有的Oracle GlassFish Server 2.1.x和3.1.x商业客户。 如果您处于这种环境,我基本上不建议完全迁移。 这两款服务器的扩展支持分别于2017年1月(GFv2)和2019年3月(GFv3)终止。

Oracle / GlassFish客户/商店并愿意尽早使用Java EE 7的新功能?

因此,您是Oracle客户,并且渴望早日使用最新技术? 还是需要大量修改应用程序?

基本上,您有三个选择:坚持使用GlassFish 4 OSS版本(无支持合同)或移至WebLogic 12c(12.1.4),后者很可能将获得完整的EE 7支持,或者首先移至GF 4逐步进行操作。然后再到WebLogic 12.1.4。

直接切换到GlassFish并计划在生产中继续使用WebLogic会带来在开发和生产中使用不同应用程序服务器的风险。 您需要对此加以重视并进行相应处理。

为了完全降低风险,我建议至少等待WebLogic 12.1.3,该WebLogic 12.1.3将具有第一组新的Java EE 7规范,并有望在CY2014上半年推出。

如果您不运行关键任务应用程序并且不需要支持合同,那么我建议您迁移到GlassFish 4.0,以促进已经可用的基础架构,技能和合同。 对我而言,匆匆更换供应商毫无意义。 准备终止支持合同,然后计划评估您对正确的开源应用程序服务器的决策。

真的不是Oracle客户/商店,是否对EE 7新功能没有任何兴趣?

在您的需求更改之前,根本不要迁移。 您可能会很快开始评估您的下一个Java EE 7服务器产品。 但是到目前为止,还没有很多认证的替代产品。

并非如此,Oracle客户/商店会不断变化的要求,是否会使用新的EE 7功能?

今年可能是时候重新审视您的IT环境。 似乎您已经决定在某些时候使用GlassFish。 您可能需要重新考虑以前的决定并评估该做什么。 要对下一个Java EE服务器做出有充分根据的决定,为时过早。 EE 7服务器的认证矩阵大部分为空。 等待更多的选择。 我预计这将占用2014财年的大部分时间。

如果您从今天起就需要新的EE 7功能,并且将来需要能够购买商业支持,但现在就不需要,现在唯一的选择就是WildFly 8。

GlassFish 4的未来将如何发展?

我希望我能告诉你。 我想我在较早的帖子中提出了自己的观点。 Oracle需要GlassFish作为Java EE参考实现,并且考虑到WebLogic和GlassFish中常用组件的数量,它将始终存在。 可以肯定地认为,Java EE规范将始终是GlassFish中最新和最完善的规范。 但是,Java EE生态系统导致了许多厂商特定的扩展和功能,这些扩展和功能并未真正包含在任何规范中。 这些对我们所有人来说都是商品(主要是集群,管理功能,嵌入式服务器),在很多情况下我们都不想错过它们。 进一步,社区参与的补丁频率和等级将是GlassFish在项目和开发人员之间成功传播的关键因素。

参考: WildFly 8与GlassFish 4 –从我们的JCG合作伙伴 Markus Eisele中选择哪个应用程序服务器 ,该博客在Java企业软件开发中 。

翻译自: https://www.javacodegeeks.com/2014/02/wildfly-8-vs-glassfish-4-which-application-server-to-choose.html

WildFly 8与GlassFish 4 –选择哪个应用服务器相关推荐

  1. glassfish发布应用_WildFly 8与GlassFish 4 –选择哪个应用服务器

    glassfish发布应用 自从我上一个博客以来已经有一段时间了. 我显然忙于其他事情,包括我的主要工作. 在对应用服务器的正确选择提出更多疑问之后,是时候再次讨论这个话题并分享我的想法. 该博客上最 ...

  2. JAVA就业指导(转)

    版权声明:转载文章  原地址-> http://blog.csdn.net/jackfrued/article/details/45035097 (很不错的文章 转载一发) Java就业指导   ...

  3. 掌握这 11 个方法论,搞定一场完美技术面试!

    想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢? 本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些 ...

  4. Java 面试就业指导,100 % 提高面试成功率

    转载自   Java 面试就业指导,100 % 提高面试成功率 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢? 本文陈列的这些内容既可以作为个人 ...

  5. java项目嗖嗖移动业务大厅项目报告_Java就业指导课程

    Java就业指导 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东 ...

  6. 如何面试3w的java工程师的成功秘籍

    前言:想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把 ...

  7. 关于Java程序员技能和面试注意事项

    文章来源:http://blog.csdn.net/jackfrued/article/details/45035097 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前 ...

  8. 想跳槽涨薪的必看,Java就业指导(1)

    熟悉面向对象的设计原则,对GoF设计模式和企业应用架构模式有深入的了解和实际开发的相关经验,熟练的使用UML进行面向对象的分析和设计,有TDD(测试驱动开发)和DDD(领域驱动设计)的经验. 熟悉Ap ...

  9. Java程序员该如何规划自己的职业发展方向

    Java就业指导 想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东 ...

最新文章

  1. 探索从 MVC 到 MVVM + Flux 架构模式的转变
  2. 在Forge Viewer上显示自订义属性
  3. MySQL插入数据时报错Cause: java.sql.SQLException: #HY000的解决方法
  4. python asyncio_Python 的异步 IO:Asyncio 简介
  5. xhtml文件的后缀名是什么?
  6. java js引擎,Java8 Nashorn JavaScript引擎
  7. 面试官:this和super有什么区别?this能调用到父类吗?
  8. 快速排序+统计→奶牛的耳语(洛谷P1296题题解,Java语言描述)
  9. CCF 2018-9-2买菜
  10. 自学笔记 - 购物篮关联分析-两两相关
  11. 多线程,多进程使用场景
  12. spring5.0学习笔记1
  13. python 通过模板生成文章_自动生成文章_python自动生成文章 - 云+社区 - 腾讯云
  14. python制图一元迭代函数_Python中 生成器、迭代器、闭包、装饰器、元类实例分析...
  15. Elasticsearch:使用 Python 进行 Bulk insert 及 Scan
  16. 计算机主机忘了密码怎么办,如果我忘记了笔记本计算机的开机密码怎么办
  17. react 使用 swiper
  18. 耶斯莫拉~一起来学集合啊~
  19. Redis | 客户端
  20. V神发起 Twitter 硬分叉民意调查,结果如何?

热门文章

  1. 在html页面中怎么打印区域,在HTML中指定打印区域进行打印机打印
  2. java threadlocal 缺点_Java的ThreadLocal如何在后台实现?
  3. cassandra 备份_使用sstableloader恢复Cassandra Priam备份
  4. json怎么读取数据库_如何:使用Json插入数据库并从中读取
  5. 滑动拼图验证码操作步骤:_拼图项目:一个不完整的难题
  6. 子模板继承父模板示例_模板设计模式示例
  7. qt如何捕获应用程序输出_企业应用程序中需要捕获的5大Java性能指标
  8. NoSql数据库:Cassandra,Mongo,Redis数据库比较
  9. 在边缘,作为网关或在网格中构建控制平面以管理Envoy代理的指南
  10. javaml_一些基于Java的AI框架:Encog,JavaML,Weka