我个人对soa的看法:soa是一个比面向对象,面向组件更高层次,更粗粒度的复用技术。
当我们把算法,可固化的业务逻辑封装进对象和组件时,就不得不面对随需变化,不断修正的业务规则和流程。这些业务规则和流程不仅仅是纯粹技术性的东西,它遵循的不仅仅是物理逻辑和自然哲学,而更多的是综合性的逻辑,这种综合性逻辑涉及各方各面,所以每一方面的变化都可能我们需要去修正这些业务规则和流程。另一方面,业务规则和流程面对的不再是简单的机器,而是人和业务系统。它必须是“亲民”的,不能太复杂。
在OSGI规范里,定义了OSGI service,但这个service和SOA的service并不能等同,理由同上所述,OSGI service大致属于面向组件层面的service,是偏向于技术层面的复用,是稍细粒度的复用,而SOA的service则是业务层面,更粗粒度的复用。
我们可以用规则和流程将SOA的service串连起来,成为真正的企业级应用。而SOA的service则可以由OSGI service组合而成(这只是一种方式,不局限于此),所以,我觉得OSGI可看成是一个微观的SOA实现。
我目前只看到servicemix(FUSE)似乎是采用类似观点来看待OSGI的ESB实现。其它的如JBOSS,虽然以OSGI来构建自身,但似乎没有将OSGI service无缝地与SOA融合。(也许是我个人知识的局限,请有识之士不吝赐教)。
分享到:
相关推荐
4. **服务组合与重用**:OSGI Bundle之间的依赖关系可以模拟SOA中的服务组合,使开发者能够轻松地复用和组合已有的服务。 **学习资源** 提供的压缩包文件中包含了两个PDF文档——"OSGI实战.pdf"和"OSGI进阶.pdf",...
**SCA与OSGI(Open Services Gateway Initiative)** 有所不同,OSGI最初设计用于移动设备计算,关注点在于动态管理和模块化,而SCA专注于企业级应用集成。尽管两者都涉及服务和组件的概念,但OSGI更注重运行时环境...
标题中的“基于SOA和ESB企业总线的OSGi企业级应用”是一个关于构建企业级软件系统的主题,其中涉及到三个关键概念:Service-Oriented Architecture(SOA)、Enterprise Service Bus(ESB)以及OSGi(Open Service ...
#### OSGi与SOA的关系 在面向服务架构中,OSGi的角色是提供一个灵活的、基于组件的基础架构。它可以被视为SOA的一个组成部分,通过支持动态服务发现、管理和调用来增强整个架构的灵活性和可扩展性。在实际应用中,...
3. **SOA兼容性**:OSGi遵循面向服务的架构(SOA)原则,创建规范且可重用的模块服务,使得不同服务之间可以高效协作。 在实际应用中,OSGi被广泛应用于各个领域,例如: 1. **宝马汽车的应用控制系统**:利用OSGi...
Osgi基于服务导向架构(SOA),它的核心是bundle,每个bundle都是一个自包含的单元,拥有自己的类路径、生命周期管理和依赖管理。Osgi提供了一种动态的方式来管理这些bundle,允许它们在运行时安装、启动、停止、...
例如,在SOA(Service-Oriented Architecture)环境中,OSGI服务可以作为微服务的基础,实现服务的独立部署和升级。 3. **嵌入式系统**:由于其小体积和低内存占用,OSGI也常被用于嵌入式设备,如路由器、智能家居...
资源名称:OSGi相关框架学习资料资源目录:【】EclipseRCP与SpringOSGi技术详解与最佳实践【】osgi.core.javadoc-5.0.0【】OSGi_R4_Spec_zh_cn_origional【】OSGi原理与最佳实践【】OSGi原理与最佳实践的源码【】...
Eclipse与OSGi技术在发展初期是并行发展,但彼此的相遇并不多。Eclipse最初是由软件工具供应商的松散联盟创建的,目的是创建一个全面的工具平台。随着Eclipse技术的成熟,它迅速占据了工具市场的主导地位,基于...
它不仅解决了模块化问题,还引入了一个新的面向服务的编程模型,有人称其为“虚拟机内的SOA”。 #### 二、Java平台与模块化的挑战 Java平台自问世以来取得了巨大的成功,被广泛应用于从小型移动设备到大型企业级...
4. **服务导向架构(SOA)**:OSGi支持服务注册和发现,使得组件之间可以通过服务接口进行交互,而不是直接引用对方。书中可能会讲解如何设计和实现OSGi服务。 5. **开发工具与框架**:介绍Eclipse Equinox、Apache...
- **2.2 技术角度**:从技术层面解析OSGI的工作原理和技术优势,例如模块间的解耦、服务注册与查找机制等。 #### 三、OSGI带来的价值 - **模块化**:通过定义明确的边界和依赖关系,使得应用程序更加模块化。 - **...
第6章 模块化与SOA 6.1 重新审视“自上而下” 6.2 粒度--架构师的强大对手 6.2.1 现实世界的一个例子 6.2.2 提升一个等级 6.2.3 另一个维度 6.2.4 全景图 6.2.5 服务样例 6.3 另一个视图 6.4 结论 第7章 ...
第6章 模块化与SOA 6.1 重新审视“自上而下” 6.2 粒度--架构师的强大对手 6.2.1 现实世界的一个例子 6.2.2 提升一个等级 6.2.3 另一个维度 6.2.4 全景图 6.2.5 服务样例 6.3 另一个视图 6.4 结论 第7章 参考实现 ...
关于SOA中热门技术OSGI的入门样例的经典版本,供对需要进行ERP设计和学习的入门读者使用的经典
- **Swordfish:基于OSGi的SOA架构**:Swordfish是Eclipse项目中的一个重要组成部分,它基于OSGi框架实现了SOA架构。这种方式使得服务可以在运行时动态加载和卸载,极大地提高了系统的灵活性。 - **Eclipse与Web...
首先,OSGI是SOA(Service-Oriented Architecture,面向服务架构)思想在Java进程内的实现,它允许应用程序被分解为一系列独立的模块,称为 bundles。这些模块之间通过接口进行通信,可以独立加载、卸载和更新,无需...
9. **工具和框架**:书中还会介绍一些与OSGi相关的开发工具和框架,如Equinox、Felix等,以及如何使用这些工具来简化开发过程。 10. **最佳实践**:作者分享了在使用OSGi时的最佳实践,帮助开发者避免常见陷阱,...
5. **Service-Oriented Architecture with OSGi**: Exploring how to design and implement SOA principles within the OSGi framework, focusing on loose coupling and service orientation. 6. **Advanced Topics...