开源应用服务器JBoss
JBoss简介
近年来,在J2EE应用服务器领域,JBoss是发展最为迅速的应用服务器。JBOSS是一个安装简单,包含Web服务器(servlet/JSP容器,HTML服务器)、EJB2.0/EJB3.0容器、Java消息服务等等功能的应用服务器,但是它的面向方面设计(AOP)是它真正突出的部分。JBoss是免费的,开放源代码J2EE的实现,它通过LGPL许可证进行发布, 你可以在任何商业应用中免费使用它,而不用支付费用,这使得JBoss广为流行。JBoss是一个运行EJB的J2EE应用服务器,例如:数据库访问JDBC、交易(JTA/JTS)、消息机制(JTS)、命名机制(JNDI)和管理支持(JMX)。它是开放源代码的项目,遵循最新的J2EE规范。目前的JBoss发布版2.2.4实现了EJB 1.1和部分EJB 2.0以及EJB3.0标准、JMS 1.0.1、Servlet 2.2、JSP 1.1、JMX 1.0、JNDI 1.0、JDBC 1.2和2.0扩充(支持连接池 (Connection Polling))、JavaMail/JAF、JTA 1.0和JAAS1.0标准,JBoss是100%纯Java实现能运行于任何平台。
从JBoss项目开始至今,它已经从一个EJB容器发展成为一个基于的J2EE的一个web 操作系统(operating system for web),它体现了J2EE规范中最新的技术,并且它还在the JavaWorld Editors’ Choice 2002评选中获得“最佳Java应用服务器”大奖。无论是学习还是应用,JBoss为我们提供了一个非常优秀的平台。
JBoss的优点
1)JBoss是免费的,开放源代码J2EE的实现,通过LGPL许可证进行发布。
2)JBoss需要的内存和硬盘空间比较小。
3)安装非常简单。先解压缩JBoss打包文件再配置一些环境变量就可以了。
4)JBoss具有统一的类装载器,能够”热部署”,部署BEAN只是简单拷贝BEAN的JAR文件到部署路径下就可以了。如果没有加载就加载它;如果已经加载了就自动更新。
5)JBoss与Web服务器在同一个Java虚拟机中运行,Servlet调用EJB不经过网络,从而大大提高运行效率,提升安全性能。
6)用户可以直接实施J2EE-EAR,而不是以前分别实施EJB-JAR和Web-WAR,非常方便。
7)Jboss支持集群。
8)将具有革命性的JMX微内核服务作为其总线结构。
9)JBoss本身就符合面向服务的架构,它是高度模块化的和松耦合的。
10)支持完整的纯Java的数据库引擎,(Java消息服务)JMS,JavaMail,和Java事务处理API/Java事务处理服务(JTA/JTS)支持。
JBoss服务器架构
JBoss的构架和其他J2EE应用服务器的构架有着巨大的不同。JBoss的模块架构是建立在JMX底层上的。JMX是一个可复用框架,它为远程(Remote)和本地(Local)管理工具扩展了应用。它的架构是层式架构。他们是实现层(instrumentation layer)、代理层(agent layer)和发布层(distribution layer)。其中,发布层还在等待未来的标准化。简要的表述是,用户使用管理Bean,MBean来提供获得相应资源的实现方法。实现层实现相关的特性资源并将它发布于JMX相关应用中,它的代理层控制和发布相应的注册在MBeanServer代理上的管理资源。
JBoss主要模块
主要的JBoss模块是在MeanServer上的可管理MBean。
1)JBoss EJB容器是JBoss服务器的核心实现。它有两个特性,第一是在运行期产生EJB 对象的Stub和Skeleton类,第二是支持热部署。
2)JBossNS是JBoss命名服务用来定位对象和资源。它实现了JNDI J2EE规范。
3)JBossTX 是由JTA/JTS支持的交易管理控制。
4)部署服务支持EJB(jar)、Web应用文档(war)和企业级应用文档(ears)的部署。它会时刻关心J2EE应用的URL情况,一旦它们被改变或出现的时候将自动部署。
5)JBossMQ使Java 消息规范(JMS)的实现。
6)JBossSX支持基于JAAS的或不支持JAAS机制的安全实现。
7)JBossCX实现了部分JCA的功能。JCA制订了J2EE应用组件如何访问基于连接的资源。
8)Web服务器支持Web容器和Servlet引擎。JBoss 2.4.x版本支持Tomcat 4.0.1,Tomcat 3.23和Jetty 3.x服务.
JBoss架构设计中的两个重要的特性
1)使用JMX作为一个软件总线垂直的贯穿其所有的服务,通过将新的服务组件遵循JMX规范挂接上”总线”,使得系统扩展现有的服务变得容易。可插入式框架被广泛的运用于服务的实现。开发者可以选择他们需要的服务并编写他们所需要的相应实现,通过定义在部署描述文件中,让JBoss服务器知道。
2)容器被设计成为动态代理机制,这样使容器的实现变得简单和使开发者避免费劲的将jar文件进行预编译以获得stub和skeleton代码。但是这样做潜在的问题是性能和可测性,因为我们知道java反射机制会引起性能的损失。JBoss中存在着相应的优化方案并且在将来的研究中我们会论述该优化方法在什么时候工作并且是如何工作的。
3. Web内容管理系统Hyperoffice
微软Exchange产品的确是一个功能相当强大的产品,不过昂贵的价格也使很多企业用户望而却步。为了能找到一个可以真正与Exchange相匹敌的替代品,我研究了很多的协作工具,最后,终于找到了Hyperoffice。Hyperoffice能提供很多实用和协作功能,比如基于Web的电子邮件、共享协作日历,甚至还具备微软Outlook同步功能,而更重要的一点是Hyperoffice总体拥有成本非常低。因此Hyperoffice受到了很多企业用户的青睐。
HyperOffice的成功源于它的基于Web的设计模式。由于不需要下载、安装和维护软件—只要有一个Web浏览器就可以了,这使得Hyperoffice给IT部门节省了一笔数额惊人的IT预算。Hyperoffice还内置了一个PIM (个人信息管理器),能够方便快捷地管理你的个人信息。可以说,Hyperoffice几乎可以满足你的任何需求,甚至在动态的企业环境下也是如此,所以Hyperoffice是微软Exchange的一个完美替代者。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
IT业界面临的九大最严峻安全威胁
本文列举了如今IT业界面临的九大最严峻安全威胁,例如网络犯罪集团的兴起、骡与洗钱组织支持下的小型技术团队、黑客行动主义者、知识产权盗窃与商业间谍活动……
-
基于云的项目管理服务正在起航(一)
要按时按预算地完成项目管理是具有很大难度的,无论是开发新产品、新IT系统或者新的客户服务系统。对于很多企业,基于云的项目管理服务正是解决这个问题的良方。
-
开源方案助力敏捷和协作开发
对企业中开源方案的主要批评主要是在支持方面,但是本月上旬的红帽峰会上的高管说这是个误解。
-
黑莓应用开发:内部访问还是外部访问?
在应用数据的持有者和访问数据的移动用户之间是什么关系?如果移动用户是拥有数据的机构的一分子,那么BlackBerry设备和应用服务器之间的连接可能是……