浏览 7906 次
锁定老帖子 主题:浅谈Geronimo的现状
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2005-04-25
亲眼看着JBoss从无到有,从小到大,从不入流的小混混到举足轻重的业界大佬,Apache自然是百感交集,再想到自己手里有无数J2EE规范的官方指定实现,却偏偏没有自己拿得出手的J2EE Server,更是坐立不安。无奈只好请出Geronimo,希望借助领袖的神力带领他们杀入J2EE Server市场,争得一片安身之地。1年多过去了,让我们来看看领袖是怎样炼成的。 Kernel 首先说说Geronimo的核心,开项目的时候apach考虑过使用开发和JBoss类似的JMX结构,或是采用已有的HiveMind,和PicoContainer。这3位候选者都是经是鼎鼎大名的了,我就不做进一步介绍了,不太了解她们(请原谅我用对待MM的心情来对待软件)的同志们请去她们各自的主页作进一步的赏析。经过长时间的讨论,最后JMX被相中了,在这个发布版本中所用到的JMX based infrastructure可以说是和JBoss的微内核很相似。不过,各位可千万别误会,以为Apache是拿来主义,不是,绝对不是!高手过招讲的是神似,想踢你的PP就绝对会用腿,至于怎么踢,是直踢,侧踢,还是飞身踢,旋转踢,每个高手都有自己的套路,各不相同。Geronimo的JMX实现可以说从概念上和JBoss的没什么太大的不同,可是从实现上来说可是千差万别了,无法类比。简单来说,所有的模块都是由一种叫做GBeans的东东实现的。在实现整个内核的时候,开发人员采纳了一些PicoContainer的设计,结果导致这个内核看起来非常的IoC。 EJB Support 除了核心外,最重要的部分非EJB Support莫属了。同意的同志们请举右手,不同意的同志们请举左手,好!全票通过! 鼓掌! Apache最终选择了OpenEJB作为EJB-Container,这是我个人认为比较无奈的选择,因为OpenEJB目前只支持EJB1.1和很小一部分EJB2.1,而且要命的是不支持EJB-QL(想想EJB2.0中EJB-QL不支持"ORDER BY",真是噩梦一场,会吓坏小孩子的)。为什么说它无奈呢? 因为的确是没有其他更好的选择,有总比没有好!希望Apache能帮助OPenEJB尽快发展,不然等到Geronimo成品发布时你只是支持EJB1.1或EJB2.1,而人家JBoss可是支持EJB3.0,上过小学一年级的小朋友都会算 3.0 〉1.1,了解EJB的同志们肯定明白EJB3.0相对EJB2.1的巨大飞跃意味着什么吧!Geronimo到时候不但当不成”JBoss Killer“,反而会成为”JBoss killed“。祝Geronimo一路走好。 Web-Container 如果EJB-Container是Geronimo的右臂,那么Web-Container就是他的左膀了。绝对要慎重选择。一说到Web-Container很多人,包括我在内,都会毫不考虑的说:当然是用Tomcat!嘿嘿!人家高手就是高手,人家最开始选用了Jetty,因为Jetty长得漂亮,身材好,而且也支持JSP2.0和Servlet 2.4。不过,幸好有个不过!,后来由于Tomcat经过一番内部整容,以及由于明星效应逐渐扩散开的知名度,使得Apache又开始考虑Tomcat5.x。最终决定Jetty和Tomcat并存。目前还有一些关于安全方面的小问题需要解决。 JMS Support 对于目前的J2EE Server来说,JMS support也是一个必不可少的部分。在项目开始的时候,apache选择使用已有的JMS open source OpenJMS,可是后来发现,OpenJMS只是很简单的支持部分J2EE1.4规范,而且直接邀请James Strachan参加到开发团队来是件不太现实的事情,最终James Stachan,Hiram Chirino和一些Geronimo的开发员决定开发一个新的JMS实现:ActiveMQ。目前,ACtiveMQ是通过JCA1.5整合进Geronimo中的,以后,如果需要的话,用户完全可以选择其他支持JCA1.5的JMS Server来代替ActiveMQ。 Web Services Support 轮到当今最火的功能块了。Web services 已经热火了两年多了,星运正盛,如日中天,Geronimo当然不能放过她。目前这部分还没有实现,不过如果不出什么意外的话,Axis会被整合进来,不错的选择,我举双手赞成。可惜Geronimo是开源项目,不然的话,我强烈建议选择Systinet WASP。 详情请看我的硕士论文 http://www.sts.tu-harburg.de/people/pa.hupe/studenttheses/GeDA.pdf , 个人拙见,绝对不是做广告,还请各位前辈指教。 其他 当然Geronimo还实现了很多重要的的功能,比方说AOP,JNDI,JTA/JTS,JCA1.5等等,我就不一一解说了,有兴趣的同志们请去Geronimo他家逛逛!MM优先! 目前Geronimo正在快速的成长过程中,以上所介绍的内容可能很快就被修改的面目全非了,如有错漏之处,还望同志们本着治病救人的原则,帮兄弟一把。 Links Geronimo.apache.org 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2005-05-07
openejb 1.0支持ejb1.1;cmp引擎采用castor,功能和eql类似。还支持pass by reference,效率比用remote inface高。就使用效果来说,超过ejb2.x标准。
openejb1.0应该是第一个采用ormapping作为cmp引擎的的ejb容器。openejb1.0可以作为独立服务器使用,还可以作为inside jvm 插入应用程序或web container(jetty或tomcat) 使用。 apple的的j2ee服务器WebObjects 5.1 采用openejb作为ejb容器。 Geronimo采用openejb2.0作为ejb的容器(目标是满足ejb2.1的标准,目前只差eql这个核心功能),但其cmp用的是tranql这个东西。 |
|
返回顶楼 | |
发表时间:2005-11-21
我更新了我的blog, csdn那个太慢了。
来逛逛吧! http://spaces.msn.com/members/polygoncell/ |
|
返回顶楼 | |
发表时间:2005-11-22
读完这篇文章,看来我以往对Geronimo的前景太过乐观啦。
这开源的毕竟在开发力度和支持上没办法和财大气粗的那些项目比较啊! |
|
返回顶楼 | |