Equinox的OSGi实现与应用服务器

开发 后端
通过OSGi框架强大的组件控制,交互和管理能力,OSGi作为应用服务器的基础架构已经成为现实,Equinox项目是Eclipse开源组织提供的OSGi框架的实现。

Equinox项目是Eclipse开源组织提供的OSGi框架的实现。Eclipse自3.0版本开始,其内核移植到OSGi框架上。通过OSGi框架强大的组件控制,交互和管理能力,再加上Eclipse插件的自有特点,Eclipse开源框架得到了跳跃式的发展。同时,OSGi规范得益于Eclipse IDE环境庞大的使用者,OSGi联盟也进入了快速发展时期。

OSGi作为应用服务器的基础架构已经成为现实。Equinox提供了一组基础的Bundle,使得使用JSP、Servlet和Struts等J2EE技术的Web应用项目可以运行于Equinox OSGi环境中。同样的,Equinox通过一组Bundle,可以将Equinox OSGi应用嵌入到现有的Web服务器(如Tomcat,Jetty等)和应用服务器(如Websphere,Weblogic等)中。

下面是Equinox在J2EE应用方面的部分Bundle列表:

org.eclipse.equinox.servletbridge
Servlet Bridge

该Bundle提供一个底层的Hook servlet,使得Equinox可以嵌入到现有的应用服务器中运行。该Bundle中的servlet启动嵌入的Equinox并使其可以处理来自底层应用服务器接收的HTTP请求。

org.eclipse.equinox.http.servletbridge
HTTP ServletBridge

该Bundle为底层的应用服务器(如Tomcat,Jetty等)发布为OSGi HTTP服务提供一层封装。封装的应用服务器必须安装该servlet bridge。

以上两个bundle是将应用服务器作为bundle集成进入OSGi大环境的关键。

org.eclipse.equinox.http.servlet
HTTP Servlet

该Bundle为在Equinox中发布其他servlet处理引擎(如传统的应用服务器)为OSGi HTTP服务提供支持 。

org.mortbay.jetty
Jetty

嵌入式Jetty实现的Bundle封装。目前Equinox提供的Jetty实现版本为5.x。

org.eclipse.equinox.http.jetty
HTTP Jetty

该Bundle封装Jetty为标准的OSGI HTTP服务。目前该服务只能使用Jetty 5.x版本;如果用户希望使用Jetty 6.x版本的Bundle封装,可以参考ops4j上的实现。

 

【编辑推荐】

  1. OSGi在ServiceMix4中的应用
  2. 浅析Apache Felix项目中的OSGi
  3. GlassFish是什么?基于OSGi的Web服务器
  4. 初探OSGi Web容器:控制Web程序的生命周期
  5. OSGi为什么重要:向模块化转移的主攻手
责任编辑:佚名 来源: JavaEye
相关推荐

2010-01-14 13:56:49

JSR 294Java模块化OSGi

2009-01-16 14:37:57

TomcatWeb服务器应用服务器

2009-06-01 11:37:46

EquinoxOSGi服务器

2009-06-16 15:35:20

JBoss应用服务器

2018-12-12 08:40:11

服务器TomcatJava

2009-01-10 19:32:36

2017-10-17 09:15:06

Web服务器区别

2012-02-23 10:02:08

Web服务器应用服务器

2018-02-07 10:08:02

应用服务器网络数据库

2014-08-08 16:35:37

应用服务器

2018-05-24 10:15:18

服务器Session问题

2012-03-23 09:32:48

应用服务器

2012-02-02 10:24:08

JavaResin

2021-05-28 05:18:08

PHP语言roadrunnner

2009-02-27 14:25:00

Weblogic应用服务器服务器管理

2018-03-20 14:24:10

Web服务器HTTP

2011-11-18 13:14:37

JavaWebWebServices

2014-05-30 11:29:36

Java服务器

2015-08-14 09:31:55

开源Python服务器
点赞
收藏

51CTO技术栈公众号