迁移到 OSGi?

迁移到 OSGi?

我们目前使用 JavaServiceWrapper 在 Windows 上运行服务器端 Java 应用程序,这对我们来说是一个很好的解决方案。我们有少量基于 Spring 的轻量级应用程序。

但现在我们需要考虑在我们的服务中引入一些模块化。为此,我一直在考虑 OSGi。

我需要知道哪些 OSGi 容器适合在中等负载环境中的黄金时段生产使用?

  • Eclipse Equinox 3.5.x
  • Knopflerfish 3.x
  • Apache Felix 2.x
  • 还要别的吗?

答案1

除了列出的框架之外,另外两个突出的实现是门房ProSyst mBedded 服务器,尽管它们都是面向移动和嵌入式使用。

对于服务器端工作,直接在独立 OSGi 框架上构建的替代方法是使用增值发行版,例如阿帕奇卡拉夫日食处女座或者帕雷默斯·尼布尔(我在 Nimble 工作)。

理解这一点的一个有用方法是将 Equinox、Felix 和 Knopflerfish 等框架实现视为与 Linux 或 BSD 内核等操作系统内核类似,将 Karaf、Virgo 和 Nimble 视为与 Ubuntu 和 Suse 等操作系统发行版类似。对于 Unix,大多数组织采用发行版而不是内核,据我所知,OSGi 似乎也发生了同样的事情。

Karaf、Virgo 和 Nimble 添加到原始 OSGi 框架的额外功能包括:

  • 强大的炮弹
  • 脚本支持
  • ssh 访问
  • 捆绑依赖项解析、配置和诊断
  • 预配置日志记录
  • 支持使用 WAR
  • 操作系统集成(作为服务运行的能力)
  • 能够轻松在框架之间切换

所有这些项目都在积极开发中,因此要了解每个项目的最新详细信息,最好直接查看它们的网站。

相关内容