jboss7 web
JBoss AS 7已于本月初发布,同时支持Java EE Web Profile和OSGi 4.2。 此外,此版本还引入了新的微型容器体系结构,对Java上下文和依赖注入的支持以及其他更新列表。 在这次采访中,我们与Red Hat企业应用程序平台工程小组的负责人Bruno Georges谈了有关JBoss AS 7中的一些主要更新。
JAXenter: JBoss AS7刚刚发布。 AS7与当前可用的其他应用程序服务器(例如WebLogic,GlassFish,WebSphere)有何不同?
布鲁诺·乔治(Bruno Georges): AS7与竞争对手之间存在许多差异,最显着的差异在于性能,模块化和灵活性。
AS7引入了新的模块化体系结构,可大大缩短启动时间。 它还支持我们许多创新的和一流的API,包括CDI的Weld,HornetQ和Infinispan。
JBoss不仅从这些技术中拥有强大的优势,而且更重要的是,所有这些技术都可用于解决从传统的硬件服务器到移动和PaaS环境的广泛部署。
我们考虑到了高可用性,高嵌入性和轻巧性。 基本上,我们已经为明天设计了这些技术,而不仅仅是今天。
灵活性:竞争者拥有大量产品,我们的客户不仅在寻求企业功能,更重要的是寻求一种轻量级的企业Java开发方法,同时又保留了企业需求和运营能力。 通过JBoss的“开放选择”,我们为开发人员和管理员提供了选择所需内容的选择,而不必担心供应商锁定。
对于开发人员,我们在同一运行时环境中支持多种语言。 我们是运行基于Spring,Struts,Ruby on Rails的应用程序的最佳场所。
开源和JBoss不仅是正确的解决方案,而且对于保留这些关键原则也至关重要。
JAXenter:在使AS Java EE6 Web Profile兼容方面,团队面临哪些挑战?
Bruno: Java EE6引入了配置文件的概念,其中Web Profile是第一个标准化的。
由于用于验证其他技术的规则可能导致不同的解释,因此,在通过附加组件(例如JCA)进行了增强后,在验证严格的Web Profile实现之前,我们必须经过几次迭代。
从积极的方面来看,新内核的模块化使我们免受了TCK未明确涵盖的合规性问题的困扰。
JAXenter: JBoss AS7添加了内置的OSGi支持。 现有的JBoss AS用户将从这种内置支持中受益吗?
Bruno:现有的JBoss AS用户可以从AS7中的OSGi支持中受益,因为他们可以将OSGi集成到他们的Java EE系统中。 通过使用OSGi服务,这将使他们能够利用OSGi在其Java EE组件中的动态功能。 OSGi服务由OSGi捆绑软件提供,并且两者都有动态的生命周期。 可以在运行时添加和删除它们。 这为基于OSGi Services的应用程序提供了修补或更新的功能,而无需关闭实际的应用程序本身。
现有JBoss AS用户获得OSGi支持的另一种可能性是,他们可以利用Java EE部署中现有OSGi捆绑包中可用的功能。 组织可能希望在Java EE上下文中使用OSGi中可用的基础结构。 JBoss AS7允许他们执行此操作。
我们的优势在于,本机模块和服务层使我们有更多机会进行性能调整。 其他应用程序服务器基于Eclipse Equinox或Apache Felix构建,这意味着它们的性能受这些项目的约束。
JBoss社区是一个热情而充满活力的社区,因此人们很可能会在AS7中选择OSGi。
JAXenter:您在开发AS7时更改了现有的微型容器架构。 是什么影响了您做出此更改的决定? 在此版本中,微容器又如何更新?
Bruno:我们在AS 7中拥有全新的核心架构,该架构基于新的JBoss模块化服务容器(简称MSC),取代了以前的微型容器。 如此重大变化的主要原因是,我们观察到了硬件的范式转变。 现在,几乎所有现代CPU(包括台式机,笔记本电脑甚至移动系统上的CPU)都具有多个指令核,并且这种趋势正在Swift扩展。 我们确实想利用这种功能,因此我们设计了一个完全并发的容器架构。 另外,我们希望提供真正的模块化,以用户为中心的配置,丰富的管理模型和更低的内存使用率。 简而言之,我们认为我们在中间件方面进行了等效的范式转换。
JAXenter:对于此版本,JBoss AS团队如何针对更快的启动时间?
Bruno: JBoss AS7已从头开始重新架构。 JBoss AS负责人Jason Greene及其团队设计了AS7,以实现“ JBoss Everywhere”的愿景。 该团队设计了轻巧,弹性,高度可扩展的模块化服务器。
新内核围绕轻量级服务概念设计,并使用高度并行的依赖关系解析算法,该算法允许并发启动服务,以消除不必要的等待并利用多核处理器,而非关键服务则可以选择在以下时间启动:需求,或者懒惰的第一次使用。 Web,ejb,事务,jca数据源,管理服务和控制台之类的所有常见核心服务都急切启动,但同时启动。
JBoss AS 7的启动时间比以前的版本减少了10倍。 在JBoss AS7中,每个库,框架和API都由一个单独的模块表示。 这种创新方法的一些好处包括:
模块化的类加载器提供了出色的隔离性,可保护AS内部库和用户部署免受不同库以及同一库的不同版本之间意外交互的影响。
内存管理。 只有实际使用的模块才从磁盘加载到内存中,这不仅意味着启动时间更少,而且为应用程序留出了更多空间。
从最终用户的角度来看,他们将看到更快的加载时间和更明显,直观的行为。 也就是说,当他们在类路径中添加模块或他们的应用程序需要其他一些EE功能/依赖项时,它就可以正常工作。
Jandex。 一种优化注释扫描的机制,可有效利用索引来最佳地查找类和注释。
JAXenter:使AS符合EE6完整配置文件的下一步是什么?
Bruno: 7月12日,我们发货了JBoss AS 7.0.0.Final,它是经过认证的Java EE6 Web Profile实现。
我们发布了两个版本,每个版本都有其他组件。 首先,Iron Jacamar(JCA1.6)和RESTEasy(JAX-RS)附带了Web Profile认证版本,以及以前的堆栈随附的Full EE6预览版,以及HornetQ(JMS)和JBoss WS-CXF / Apache CXF的JAX -WS。
今年晚些时候,我们将发布面向完整Java EE6配置文件的JBoss AS7.1。 AS7.1中将实现的其他技术包括:
企业应用技术
JSR 318:Enterprise JavaBeans 3.1(注意:AS7.0支持Web Profile中定义的EJB3.1 Lite)
网络服务技术
JSR 109:实施企业Web服务1.3
JSR 181:Java平台的Web服务元数据
JSR 101:用于基于XML的RPC 1.1的Java API
JSR 93:用于XML注册表1.0(JAXR)的Java API
JSR 196:容器1.0的Java身份验证服务提供程序接口
JSR 115:容器的Java授权合同1.4
JSR 77:J2EE管理1.1
JSR 88:Java EE应用程序部署1.2
翻译自: https://jaxenter.com/jboss-as7-gets-java-ee-6-web-profile-support-103616.html
jboss7 web