`
傅庆岩
  • 浏览: 90559 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

OSGi与web的结合

    博客分类:
  • OSGi
阅读更多

首先,下面写的这东西其实跟OSGi有点关系,但是关系不大,就是说一下OSGiweb结合相关的一点感受,不具体谈实现。

在项目开始之前,我们也进行了一些调研,特意在烈日炎炎中下山进城里与经验者进行了交流,在需求的基础上,通过一些资料,敲定基于OSGi进行项目的展开,这样可以充分利用OSGi的特点,使各个模块能够实现组件化。而在与web结合这块,通过简短的调研,觉得还是把webOSGi结合起来,用OSGi来管理web容器,这样所有的东西在OSGi的管理下,无论从组织结构上和开发上都非常顺手。到此,Perfect

事实。OSGiweb的结合并不像盛传的那么好,最初的想把web作为一个bundleOSGi来进行管理,一起就都美好了。事实并非如此。在每一个提到OSGi管理web的事例里,作者(不如说大部分是转载者)举例web服务器被OSGi管理的服服帖帖都拿jetty来说事儿。Tomcat,应用服务器WebLogicWebSphere只字不提。最初的最初,没太在意,而且老G介绍OSGi时候说过,OSGi就是你把任何东西打成jar包,做成bundle然后往里放就行了。我问,“web服务器能放进去吗?”“能啊,jetty啊!”诚然,作为资深Eclipse插件开发者,他对这些确实信手拈来,不过当时我们并没有把需求放到更详细的角度考虑,一拍脑子,jetty,哦了,就是他。现在的考虑是,如果说tomcat是轻量级,那么jetty就是微量级了。更何况,之前确实没拿他做过什么东西。因为tomcatWebLogic通吃很多东西了,在一般应用上很少考虑这种微量级的web服务器。万一,哪天我们有需求jetty达不到(可以说不是万一是肯定),那么这种将web放在OSGi环境下管理的设计就完蛋了,生命立即终止。所以,web放在OSGi管理,达妹╮(_)解决办法,期待tomcat哪天能扔到OSGi里吧。

不把webOSGi,那只好把OSGiweb里了,EquinoxbridgeEquinox 框架以及项目的 bundle 做成一个 War 文件部署到 Servlet 容器中,这个 servlet负责对你的OSGi容器进行初始化。每当接收到一个客户请求,它将查看是否存在一个OSGi插件可以处理该请求;如果存在,它将控制转发至该插件。虽说这样传统的常用web服务器就可以用上了,我们以前一直搞的东西又回来了,总觉得这种感觉有点别扭。

OSGiweb的结合,就两种方式,webOSGi里,OSGiweb里,不恰当的比喻来一个,如果是春哥和小沈阳,肯定能分出谁搞谁来。现在OSGiweb就像春哥和曾哥,都很纯,目前看谁搞谁都不是很搞的很舒服。不过我相信至少OSGi的热度,会有大量的技术人员来参与解决这些问题,注定了不会存在两个爷们的不稳定局面。让我们翘首期待吧。

  • 大小: 5.7 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    OSGI中包含web服务器配置需要的jar.zip

    我转载的博客“OSGi环境下建立Web工程的Hello World ”中列出的jar,结合博客“OSGi环境下建立Web工程的Hello World ”开发应用。

    基于OSGi和Spring开发企业级Web应用

    基于OSGi和Spring开发企业级Web应 目前OSGi和Spring已经受到了广泛的关注,如果我们将OSGi和Spring结合,更能充分发挥二者各自的特长,同时更好地满足企业级应用开发的需求。

    OSGI原理最佳实践(包含源代码)

    是一本适合新接触OSGI开发学习的一本很好的书,本书介绍了Equinox, Spring-DM和Felix这三个常用的OSGi容器的使用、开发、以及WebApplication的开发部署;介绍了OSGi的规范和Core Framework和Layer。包含书中的用例源...

    spray-osgi:用于 Spray web 应用程序的 OSGi 运行时

    使用 Scala、Akka 和 Spray 的 Web 应用程序的 OSGi 运行时平台动机我非常喜欢 Akka 和 Spray,我很期待即将推出的 Akka-HTTP。 我也碰巧喜欢 OSGi,我认为它在 JVM 语言社区中被大大低估和误解。 我发现 Akka 的...

    基于SSH2+Maven+EasyUI+MySQL技术实战开发易买网电子商务交易平台

    亮点二、理论与实战相结合,由浅入深。即照顾到基础学员,又照顾到有一定经验的学员,讲解过程中留有学生思考的时间. 亮点三、课程绝大多数代码均是一行一行手工敲入,手把手一步步带领学员从入门到精通. ...

    jbpm7示例(jbpm-7.3.0.Final-examples)

    jBPM可以与Drools项目相结合,以支持将这些范例集成到一起的统一环境,您可以将业务逻辑作为过程,规则和事件的组合进行建模。 工作是MAVEN+eclipse jBPM jars也可以在中央maven仓库中使用 (也可以在JBoss maven...

    Zoo:为澳大利亚 UDP 定制 openhab 2

    Equinox OSGi 运行时和作为 Web 服务器的 Jetty 构建了运行时的核心基础。 它被设计为绝对独立于供应商以及与硬件/协议无关。 openHAB 通过专用绑定将不同的总线系统、硬件设备和接口协议结合在一起。 这些绑定在 ...

    jBPM5 用户指南-中文

    14.1.3测试与外部服务的结合 99 14.1.4 配置持久化 100 14.2 调试 100 14.2.1 流程实例视图 101 14.2.2 人工任务视图 102 14.2.3 核查视图 102 第十五章 流程知识库 103 第十六章 业务活动监视器 105 16.1 报告 105 ...

    JBPM5 用户指南

    14.1.3测试与外部服务的结合 93 14.1.4 配置持久化 94 14.2 调试 94 14.2.1 流程实例视图 95 14.2.2 人工任务视图 96 14.2.3 核查视图 96 第十五章 流程知识库 97 第十六章 业务活动监视器 99 16.1 报告 99 16.2 ...

    JBPM5权威指南

    14.1.3测试与外部服务的结合 93 14.1.4 配置持久化 94 14.2 调试 94 14.2.1 流程实例视图 95 14.2.2 人工任务视图 96 14.2.3 核查视图 96 第十五章 流程知识库 97 第十六章 业务活动监视器 99 16.1 报告 99 16.2 ...

    面向服务体系架构和业务组件的思考

    如何进行“组件化”开发是搭建企业级业务基础平台时需要考虑的一个重要课题,本文通过建立业务组件(BC)接口模型及内部结构模型,提供了一个在新开发系统环境下基于Web服务和OSGi标准的组件化开发模型。 什么是...

    java开源包1

    它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...

    java开源包11

    它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...

    java开源包2

    它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...

    java开源包3

    它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...

    java开源包6

    它还能够与JSTL相结合生成数据库驱动的动态Maps。 OAuth 实现框架 Agorava Agorava 是一个实现了 OAuth 1.0a 和 OAuth 2.0 的框架,提供了简单的方式通过社交媒体进行身份认证的功能。 Eclipse的JavaScript插件 JS...

Global site tag (gtag.js) - Google Analytics