apache story
跟apache(阿帕奇)相关的软件名词随处可见,例如:
1 hadoop:2 tomcat:3 s4:
那么apache是个什么样的存在呢?一个软件工具或者框架是apache项目意味着什么?
首先,他是一个维护开源软件项目的非盈利组织。也就是说,这个叫阿帕奇组织的团队,维护了很多开源项目,包括开源代码管理,项目补丁,升级等。这些项目都称为阿帕奇的顶级项目或者孵化器项目。至于为什么会有这样一个组织,他是怎么来的。可以打一个比方,说一个故事来说明:
原来有一群技术达人,设计出了一款跑车(apache http server),这车很牛,很强大,能越野能高速,并且开发者还贡献了自己的所有设计图纸(开源),这样很多这款车的爱好者们可以一起交流提建议,让这款车更牛逼。但是随着时间流逝,最初的一群开发者发现了其他更有意思更赚钱的事情,比如设计房地产,于是他们就慢慢不管这款车转向其他领域去了。
这么样一款好车,没有人去进一步开发,多可惜!于是他的爱好者们就取代最初开发者,开始自发为这款车添砖加瓦(补丁,修复,版本升级),并且还找了一个房间,让有问题的人在这里交流(社区)。人民群众的智慧是无穷的(软件开源的力量),这款车变得越来越牛逼,有人给他添上了炮筒,有人更换了巨牛逼的马达。。。。。
接着某个时候,有人开始想,我想给这车添上翅膀,这样他不仅能在地上跑,还能在天上飞。这是一项艰巨的任务,但是很多人都很有兴趣,于是大家就开始一起为跑车添加翅膀。果然这个任务太艰巨了,而且人们发现,如果这个问题搞定,他们可以创建一辆飞机了都,这可是很有前景的一项工具。好的,鉴于添加翅膀这个项目,难度和整辆跑车的设计是一样大的,商业前景和跑车是一样大的,需要投入的精力也基本是和跑车是一样大的,那么我们为啥不把这个项目单独出来,又找一个房间,让只对他有兴趣的人专门在这里研究他呢。于是他们就创建了除了跑车以外,同级别的另一个项目,飞机。
接着随着需求不断增加,慢慢开始有了其他同级别的项目,轮船,自行车,拖拉机。。。等等。这样项目一多,就应该有人来管理。只有制定出一套很好的秩序,才能保证由我们阿帕奇组织负责的开源项目有很好的质量,避免鱼龙混杂。于是就成立了阿帕奇基金会,一拨人一些规则专门用于管理开源软件的升级补丁讨论等。
回到刚才那个故事,由于阿帕奇组织越来越强大,很多大企业意识到,把产品放到这个地方来,就会吸引很多爱好者来让这个产品变得更强大。比如宝马公司有一款应用已经很好的家用车,他也把他放到组织里来,这样很多有兴趣的人就会来研究,最后可能发现这款车轮胎的设计也许不够好,然后搞出了更完美的轮胎。等等等等。于是现在的阿帕奇这个组织,除了那些还不成熟的产品外,实际还有很多已经非常成熟的产品加入进来。
由于慕名而来者越来越多,基金会就开始筛选。只有符合某些条件,比如这个项目对行业会有很大贡献,才能加入。而且加入前,有一个考核阶段(孵化器),只有通过这个考核,才能真正加入成为我们的一员(从apache孵化器毕业,成为apache顶级项目)。
经过层层筛选和爱好者们的努力,apache组织管理的开源项目一定都很优秀了吧。所以,如果有人提到某个项目是apache顶级项目,也就意味着这个项目或者工具是开源且很强大的,比如故事中的飞机。如果有人提到某个项目是apache孵化器项目(apache incubator),那么可以预见这个开源项目是一个成长中的项目,而且今后很有可能会变得很有前景。
工作实际中使用的是JBoss7,学校项目中用过tomcat,glassfish等。
JBoss7
2011年07月13日,JBoss AS 发布了 7.0 正式版。这是一个全新的版本,带来多项的改进和新特性,特别是:
1. 极快(小于3秒的启动时间)
2. 轻量级
3. 模块化的核心
4.热部署、增量部署
5. 优雅的管理
6. 集群域的管理
7. First Class components
参考:阿帕奇维基
http://zh.wikipedia.org/wiki/Apache%E8%BD%AF%E4%BB%B6%E5%9F%BA%E9%87%91%E4%BC%9A