Nagarro 的 Bill Kayser 最近详细描述了他将应用程序从一个自定义基础架构和构造过程转移到OSGi 上的经历。在另一篇有趣的介绍中,他把OSGi 比作是 JVM 内部的 SOA 。在后一篇里,他还谈及了转换的过程。业务需求是促成将应用转移到 OSGi 的推动因素。然而,令 Kayser 高兴且惊讶的是,还收获了其它好处:
……改善部分包括(但不限于此): - 从一个完整构建所必须的 25,000 行 ant 代码,降至 200 行例行的配置和约 200 行自定义回调,
- 清除了约七十个类文件目录,这些目录用来确保额外的类不会无意地被打包进错误的 jar 文件,或者出现不必要的重复,
- 通过清除无用的依赖,减小了应用程序的大小
- 扫除了以前那些引用到缺失的类和类库的未决引用所引起的未知错误,
- 清除了大量用来管理扩展的代码,它们通过自定义类装载器来隔离类空间。
- 从为每个应用程序管理四个不同的运行时配置(IDE 类路径、IDE 启动器、运行时脚本类路径、构建脚本类路径),减少到一个罗列了该应用程序所包含的 OSGi bundle 的描述文件。
…… 直到今天,只要偶尔回想起过去老版本应用程序构建时所发生的一切,团队成员们仍然会走上前来感谢我引入了 OSGi……
另外有一件事和这个话题相关,Red Monk 的 Michael Coté最近发表了《Java 中的OSGi——Eclipse Equinox 截屏和视频系列》,由Eclipse Foundation 赞助。Coté准备的话题有:企业级OSGi 介绍、Ajax 与Eclipse RAP、以及服务器端的OSGi。
查看英文原文: An OSGi Success Story
评论