精华帖 (0) :: 良好帖 (5) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-05-05
SpringSource 宣布发布 SpringSource Application Platform Beta 总体来说,Spring的Application Platform就是一个根据Rod Johnson自己对于Java企业应用开发的理解,自行制订了一套应用服务器的标准,并且开发了这样一个专用的应用服务器出来。但是Spring的应用服务器也有自己的一些特色,让我们简单看看: 这是Spring应用服务器的结构图。他的底层是用Equinox这个OSGi框架来搭建的,我们知道Equinox为底层框架搭建的应用软件还有Eclipse,他的特点是高度的模块化,可定制化和在线的部署和卸载,以及模块的版本管理、依赖管理等功能。 Spring在Equinox的基础之上开发了DMK这样一个框架,即动态模块内核(Dynamic Module Kernel),DMK封装了Equinox的很多底层操作,向上提供了更加方便的API和管理平台。 在DMK之上,所有的功能统统以模块的方式运行在DMK之上,例如Tomcat就是以模块的方式部署在Spring应用服务器上,此外还集成了应用发布模块、系统管理模块等等。所有的模块都可以以标准的方式部署到Spring应用服务器上面,具体模块的信息,可以看看Spring应用服务器的repository目录下面的文件。 Spring应用服务器给我的感觉和JBoss应用服务器很像。JBoss也是类似这样的结构,JBoss最核心的底层是JBoss Microkernel,即微内核,这个MicroKernel提供了JMX的接口,而JBoss应用服务器的所有其他功能,都是通过标准的JMX来插入到MicroKernel之上的,例如Tomcat、Hibernate3、EJB、Transaction,DB Pool等等,都是标准的SAR模块包。 他们之间比较大的不同在于Spring应用服务器底层使用的是OSGi结构来进行模块化的管理和部署,而JBoss使用的是基于JMX的模块化管理。使用OSGi的一大好处就是可以在线的热部署和卸载,并且可以提供良好的模块版本管理。 Spring应用服务器我从我初步的接触来看,我觉得有一些比较有特色的地方: 一、轻量级和模块化 Spring应用服务器本质上就是基于Equinox的Spring DMK,这DMK本身是很小的,在DMK上面可以部署各种各样的功能模块来扩展应用服务器的功能,模块化程度非常高,内核本身是很轻量级的。 看Spring Applicaiton Platform自己的文档上面说,如果去掉Tomcat模块的话,启动应用服务器只占15MB内存(能用来干啥?),其实目前Spring应用服务器并没有提供很多功能模块上来,只是一个web模块、一个部署模块和一个管理监控模块。但是计划在2.0版本增加更多的模块、例如群集支持模块、SOA模块等等。 二、在线的热部署和卸载 得益于Equinox,可以在服务器运行期增加功能模块、部署新的Web应用,或者更新、卸载Web应用,所有的这些操作都可以Online进行。这恐怕是比传统的Java应用服务器最领先的特色了。 三、库的版本管理和依赖 jar包的版本冲突和依赖是传统Java应用很头疼的一个方面,Spring应用服务器提出了自己的一套库版本管理和库依赖管理的机制,具体的原理我还没有仔细的研究,貌似也是利用了OSGi的功能。 总结: Spring应用服务器和Spring框架并没有什么直接的关系。你用其他框架开发的Web应用也可以部署到spring应用服务器上来,只是Spring应用服务器提供了很多可能你觉得不错的功能,吸引你使用spring的应用服务器,而不是tomcat或者jboss。但是Spring应用服务器并不符合Java EE的标准,因此可以看成是一个完全无视JCP的应用服务器,也是Rod Johnson大胆甩开标准进军应用服务器市场的尝试。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-05-05
嗯,不管如何,赞一个
|
|
返回顶楼 | |
发表时间:2008-05-05
robbin 写道 但是Spring应用服务器并不符合Java EE的标准,因此可以看成是一个完全无视JCP的应用服务器,也是Rod Johnson大胆甩开标准进军应用服务器市场的尝试。 SpringSource公司也是Java EE 6的专家组成员,目前Java EE 6规范没有最终发布,但是SpringSource承诺会遵守Profile A和B的规范. |
|
返回顶楼 | |
发表时间:2008-05-05
quaff 写道 robbin 写道 但是Spring应用服务器并不符合Java EE的标准,因此可以看成是一个完全无视JCP的应用服务器,也是Rod Johnson大胆甩开标准进军应用服务器市场的尝试。 SpringSource公司也是Java EE 6的专家组成员,目前Java EE 6规范没有最终发布,但是SpringSource承诺会遵守Profile A和B的规范. 兴许会遵循其中的某些规范,但是必然不会100%兼容 Java EE的规范。因为Spring是绝对要将without EJB进行到底的。而Java EE规范的核心还是EJB。 另外Java EE的专家组也不是SpringSource把持的,别忘了还有Gavin King和他背后的JBoss在呢,SpringSource想在Java EE规范里面废了EJB,GK还不得和他玩命,这可是俺吃饭的家伙。不过IBM和Oracle(BEA)早就玩SOA去了,不鸟Java EE规范了,只剩下SpringSource和JBoss,最多加上Sun这三家在玩了。 |
|
返回顶楼 | |
发表时间:2008-05-06
robbin 写道 quaff 写道 robbin 写道 但是Spring应用服务器并不符合Java EE的标准,因此可以看成是一个完全无视JCP的应用服务器,也是Rod Johnson大胆甩开标准进军应用服务器市场的尝试。 SpringSource公司也是Java EE 6的专家组成员,目前Java EE 6规范没有最终发布,但是SpringSource承诺会遵守Profile A和B的规范. 兴许会遵循其中的某些规范,但是必然不会100%兼容 Java EE的规范。因为Spring是绝对要将without EJB进行到底的。而Java EE规范的核心还是EJB。 另外Java EE的专家组也不是SpringSource把持的,别忘了还有Gavin King和他背后的JBoss在呢,SpringSource想在Java EE规范里面废了EJB,GK还不得和他玩命,这可是俺吃饭的家伙。不过IBM和Oracle(BEA)早就玩SOA去了,不鸟Java EE规范了,只剩下SpringSource和JBoss,最多加上Sun这三家在玩了。 Java EE 6分为profile A,B,Full platform,A是没有EJB的,B只有简化的EJB3.1,可以看看下面的文章,这样分是对的,因为大部分Java企业应用不用EJB等. http://weblogs.java.net/blog/robc/archive/2008/02/profiles_in_the_1.html |
|
返回顶楼 | |
发表时间:2008-05-07
http://weblogs.java.net/blog/robc/archive/2008/02/profiles_in_the_1.html
粗略看了一下 发现根本不需要跟着sun的j2ee标准走 长见识了 |
|
返回顶楼 | |
发表时间:2008-05-07
Johnson的勇气令人钦佩啊!
感觉Java EE已经背负了太多包袱,步履蹒跚。SAP似乎是要打造成一个灵活、易管理、轻量的应用服务器,不管市场前景如何,这样的思路我很欣赏~~~ |
|
返回顶楼 | |
发表时间:2008-05-09
引用 看Spring Applicaiton Platform自己的文档上面说,如果去掉Tomcat模块的话,启动应用服务器只占15MB内存(能用来干啥?) 什么疑问嘛。难道AppServer只能做Web或者WebService? |
|
返回顶楼 | |
发表时间:2008-05-09
现在只能拭目以待了
难不成他们准备用SUN JVM |
|
返回顶楼 | |
发表时间:2008-05-28
jacklondon 写道 也就是一是时髦的词汇而已。偶目前的 JDK 还是用 JDK 1.3 , 不像各位大虾,这么赶时髦。能够长期用一种东西,才能用出名堂来,这是我目前最大的体会。
你说对了一方面,但新技术也有新技术的好处,在稳定与变化之间要做好平衡。 |
|
返回顶楼 | |