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

《OSGi实战》读后感

阅读更多

看了下BlueDavy的OSGi实战这篇OpenDoc,很感谢BlueDavy同学!
例子举的是一个User Login的Case,例子很简单,让我们从中领略了OSGi的风情。这个Doc中的例子都是围绕Equinox展开的,它是Eclipse 3.1以后的核心实现,也就是说现在的Eclipse是个OSGi架构。
从架构上来说OSGi和SOA如出一辙,都强调面向服务,而OSGi似乎对热切换和契约管理比较着重,也就是说OSGi更现实,它强调的是一种实际的合约标准。产生的结果是差不多的,就是系统模块之间的高度解藕。
可以看OSGi的Core Framework,最内层是L0:运行环境(就是语言平台或者解释平台一类的环境),然后是OSGI的L1:模块,L2:生命周期管理,L3:服务注册。
我认为这种架构也基本上是一个SOA需要关注的几个问题。
L1是实现OSGi的基础,在Java下提供了类加载机制,使系统能够模块化。个人感觉类似原来Eclipse中的微内核。
L2是解决模块之间依赖关系的最基本工作单位,负责初始化、停止、更新等操作,这样模块能够活起来,同时在这些过程中可以手动维护依赖关系,也是模块协作的基础。
L3则是协作的合同签署场所,应该是L2的扩展,使模块之间能够按照契约工作。我觉得更形象地说就是路由器,模块间的动态依赖可以很好地通过它来解决,让OSGi可以动起来。
拥有了这几层,我想我们完全可以理解为一个SOA的实现,当然更细化。应该是一种新的组合应用的方式。
白嘴说肯定没有BlueDavy的文章好,大家还是去看看那篇文档。

说说遗憾:
1、OSGi在B/S架构中还不好应用。虽然例子是B/S的,可是居然是Servlet模型,里面解释了目前Equinox项目也在扩展应用服务器支持和JSP支持等,可是起码目前还不成熟。
2、模块的粒度很成问题。目前OSGi的契约机制与java interface机制对比一下。OSGi不可能完全取代本地的interface式的解藕,当然人家也没这么说。只使我担心过渡设计后,过细的Bundle肯定会得不偿失,所以需要有人设计/计划这个粒度。这个可能与基于Web services的SOA架构面临类似的问题,需要好的架构师。
3、文档不友好么?说实话,很感谢BlueDavy和OSGi观察者那些大牛的贡献。但是感觉production的样例工程还是很难搞到(其实Eclipse plugins的例子满多哈,可惜没啥文档,需要硬着头皮看),对应的指导文档还没出现。BlueDavy提供的servlet实现我们不可能跟上,毕竟简单也是一种需求。(那谁说过度设计比设计不足更可怕,那个我不是唱反调,我希望我们都能找到那个sweet point,有个好的参照那最好不过了)。
4、由于思想先进,在某些人看来是阳春白雪。估计不少人还是埋头下里巴人。观望态度。

结束,又是流水账,大家拍砖。

分享到:
评论

相关推荐

    OSGi 入门+进阶+实战

    **实战篇** 1. **构建OSGi应用**:使用Maven或Gradle的OSGi插件,可以方便地构建符合OSGi规范的模块化项目。 2. **Spring与OSGi集成**:Spring Dynamic Modules (SDM) 提供了将Spring应用与OSGi环境结合的工具,使...

    OSGI实战.docx

    在“OSGI实战”文档中,作者深入浅出地介绍了如何在实际开发环境中应用OSGI技术。 一. 序 这部分可能涵盖了OSGI的基本概念和历史背景,解释了为什么在Java开发中引入OSGI模块系统的重要性,以及它如何解决了传统...

    OSGI合集 OSGi原理与最佳实践

    网上收集的OSGI资料. 包括: OSGi原理与最佳实践(精选版).pdf OSGI实战和源码.rar osgi进阶.pdf Introduce.OSGi.ppt OSGi.in.action.ppt r4.cmpn.pdf r4.core.pdf r4.enterprise.pdf

    读书笔记:OSGI 实战 整合Maven 测试代码 .zip

    读书笔记:OSGI 实战 整合Maven 测试代码

    基于osgi框架实战源码

    标题"基于osgi框架实战源码"揭示了本次学习的主题,即OSGi框架在实际项目中的应用。"osgi实战源码"这一描述进一步强调了这是一份可以动手实践的源代码,它以一个具体的购物车案例为背景,展示了如何在项目中运用OSGi...

    OSGI 实战教程

    **OSGI实战教程** OSGI(Open Service Gateway Initiative)是一种开放标准,用于创建模块化Java应用程序。它通过提供一个服务导向的架构,使得组件可以独立地安装、升级、激活和停用,从而解决了Java应用程序的...

    OSGI进阶实战教程

    OSGi学习不错的材料 OSGi学习不错的材料 OSGi学习不错的材料 OSGi学习不错的材料

    OSGi原理与最佳实践pdf下载(完整版)

    OSGI原理与最佳实践的完整版,共12章 第1 章OSGi 简介 第2 章OSGi 框架简介 第3 章基于Spring-DM 实现Petstore 第4 章基于Apache CXF 实现分布式Petstore 第5 章构建OSGI Bundle Repositor'y 第6 章OSGi 规范解读 ...

    osgi规范实战进阶等等等

    - **OSGI实战**:OSGI实战.pdf可能提供了实际案例,帮助读者了解如何将OSGi应用于实际项目。 - **介绍性材料**:Introduce.OSGi.ppt和OSGi.in.action.ppt可能是幻灯片形式的教程,涵盖了基础概念和用法。 通过...

    OSGi原理与最佳实践(完整版)&OSGi_in_action

    1. **实战指南**:通过实际案例,展示如何将OSGi应用于不同的场景,如企业级应用、嵌入式系统或云计算环境。 2. **高级特性**:深入讲解OSGi的高级功能,如动态性、安全性、远程服务和网络服务。 3. **工具与框架*...

    OSGi 入门 学习 实战 进阶

    《OSGi实战》这本书可能涵盖了如何在实际项目中应用OSGi技术,包括Bundle的创建、服务的注册和发现、依赖管理等方面。通过这本书,读者可以了解到如何将复杂的程序分解为小型、可重用的模块,以及如何利用OSGi的生命...

    OSGI原理与最佳实践

    资源名称:OSGI原理与最佳实践内容简介:国内第一本...其后进入OSGi实战,结合实例讲解如何基于OSGi框架编写模块化、动态化的各种Java应用;最后对OSGi知 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    OSGi理论与实战

    标题和描述均聚焦于“OSGi理论与实战”,这一主题涉及了OSGi规范R4.1的核心概念、实现机制,以及如何基于Equinox框架开发和扩展OSGi-Based应用,包括分布式OSGi的深入探讨。以下将对这些知识点进行详细解析。 ### ...

    OSGI原理及实战

    ### OSGI原理及实战知识点概述 #### 一、OSGI简介 - **定义**: OSGI(Open Service Gateway Initiative)是一种动态模块化系统标准,主要用于构建Java平台上的复杂应用程序和服务网关。它通过提供一个模块化框架,...

    OSGI 入门资料PDF

    在本入门资料中,我们将探讨OSGI的关键概念、优势以及如何通过实战和最佳实践来掌握它。 1. OSGI原理: OSGI的核心在于它的模块系统,称为“bundle”。一个bundle是一个自包含的Java模块,包含了类、资源和元数据...

    OSGi原理与最佳实践

    其后进入OSGi实战,结合实例讲解如何基于OSGi框架编写模块化、动态化的各种Java应用;最后对OSGi知识进行深入讲解,通过对OSGi规范和实现框架(Equinox、Felix、Spring-DM和Apache CXF)的分析,以及最佳实践的介绍...

    OSGI 开发文档中文的

    9. **实战应用**:"OSGI实战.pdf"可能包含实际项目案例,演示如何在真实场景中应用OSGI解决特定问题。 通过阅读这份文档和解压后的"dist.rar"和"code.rar"文件,你不仅可以深入了解OSGI技术,还能获得实践经验,...

    Equinox OSGI ServletBridge 原理与实践.rar

    OSGI 在 J2EE 环境下的应用越来越广泛,目前在 Servlet 应用中使用 OSGI 有两种方式:Servlet Container in OSGI 和 OSGI in Servlet Container. 前一种:和普通的 OSGI bundle 开发差不多,而后一种:Equinox 提供...

Global site tag (gtag.js) - Google Analytics