“超级减肥王”下一位选手:Java 臃肿软件

工程 | Rod Johnson | 2008年4月10日 | ...

如果技术社区要举办他们自己的版本《超级减肥王》(或者可能是《名人瘦身俱乐部》)之类的电视节目,那么你会看到企业 Java 处于中心位置——臃肿、超重、疲惫不堪。

企业 Java 的未来正变得越来越清晰。臃肿的传统平台正在衰落,更精简的解决方案越来越多地用于生产和开发EJB 等传统技术正变得越来越不重要。Java EE 5 的反响平平,这使得它看起来越来越像是传统 J2EE 臃肿软件的最后一口气。与此同时,Java EE 6 规范终于将允许更大的模块化,这是一项将对开发者产生重要影响的重大变革,并可能重振实现之间的竞争。随着标准和基于标准的产品日渐臃肿,SOA、Web 2.0 和其他基础设施的变化不断带来十年前 J2EE 被构想时(当时它还是个胖乎乎但可爱的婴儿)未曾预料到的新需求。

关于过去就说到这里。未来又会如何呢?

我认为大图景是一个激动人心的变革时期。Gartner Group 的分析师也对此表示赞同,他们在报告《平台中间件趋势》中写道:

流行的 Java Platform, Enterprise Edition (Java EE) 和 .NET 平台中间件技术越来越不足以满足广泛的可扩展性和性能、事件驱动的编程风格、先进的面向服务架构 (SOA) 和动态应用程序开发的需求。
以下是我的预测:
  • 我们将再次看到应用程序服务器领域真正的竞争,而不是少数几家大型供应商的持续垄断。 通过 5.0 版本,Java EE 并没有像它应该的那样服务于开发者及其组织的需求,反而服务于那些受到许多繁琐且不相关的传统 API 保护而免受竞争压力的供应商,任何新的进入者都需要实现这些 API。随着 Java EE 6 需要拥抱模块化以保持相关性,重新竞争是很有可能的。
  • 明天的应用程序服务器的占地面积将比今天的Jabba the Hut小得多。 病人必须减掉数百磅,否则就会死亡。考虑另一位分析师的评论
    考虑一下(过去一两年) Web CMS 供应商将 Tomcat 作为运行时框架进行嵌入、捆绑或定位的趋势,而不是,比如说,JBoss。如果你只需要一个 servlet 引擎和 Web 服务器,为什么还要携带 EJB 运行时、JMX 框架、JAAS/JACC 以及全功能 J2EE 应用服务器附带的所有其他脚手架?
  • 明天的应用程序服务器将不仅仅实现 JCP 规范。 随着 OSGi 在服务器端的兴起和 SCA 的出现,JCP 不再是与企业 Java 相关的唯一规范来源。开源的普及和事实上的开源标准的出现引入了另一个要素。少数几个开源项目现在比构成 Java EE 的大多数规范对大多数企业 Java 应用程序更重要。这最终必将开始影响应用程序服务器的特性。
  • 市场需要解决 Tomcat 和 WebLogic/WebSphere 之间的差距。目前,市场的一个重要部分被忽视了。大多数 Java Web 应用程序最适合在 Tomcat 上运行。少数人实际上需要全功能应用程序服务器的一些更奇特的用例,例如 JCA,或分布式事务管理等专用功能。但是,更大的少数人需要其中一些产品的操作和管理功能,但对奇特的 API 和它们带来的臃肿不感兴趣。随着越来越多的最终用户公司希望淘汰传统的应用程序服务器,转而采用更适合的技术,市场需求将不可避免地得到响应,产品将能够达到最佳平衡并弥合这一差距。
  • 应用程序服务器和 ESB 之间的差距将被弥合。 这是 POJO 中间件兴起的逻辑结果。相同的底层平台应该能够同时满足 Web 和 SOA 的需求。Spring 已经为不同的部署场景提供了统一的组件模型(Gartner 也反复提到了这一点);平台其余部分的类似统一性已经迟到,并且很可能随着传统 J2EE 的束缚的解除而迅速发展。

在我接下来的这篇博客中,我将探讨一些可能在未来的精简而强大的平台基础设施中发挥作用的技术。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有