很久没有写过博客了,最近osmp项目开源后,接到很多朋友的咨询,现以osmp项目为基础一步一步介绍和带领大家步入osgi的世界。
适合入门的OSGI实战项目:
http://git.oschina.net/wyuxiao729/osmp
osmp的起源:
在上上家公司的时候和同事一起完成某运营商的智能网管入围测试项目,在他的带领下一步一步的接触osgi,同时被osgi灵活方便的部署和热加载深深的吸引,在完成此项目后,离开了公司,进入到一家游戏,娱乐,运营的公司,由于公司的很多项目是通过php开发的,在我进入公司后,公司决定使用java开发将原来很多项目重写一次,由于被osgi深深打动,于是决定使用osgi来搭建基础架构,并提供服务给前端。和上上家一起过来的同事一起基于osgi开发,并慢慢演进成现有框架。虽说已经离开了上家公司,步入到现今这家互联网公司,也从以前的osgi和传统开发转变为现在的基础设施组,搞devops方面的开,容器云方面的开发,一直还是放不下osgi,故将原来代码框架中的业务剥离出来开源出来。以供大家一起入门和交流!!!!
OSMP组件介绍:
osgi环境下的组件(servicemix部署)
osmp-http:通过cxf对外发布统一请求入口,提供restful和soap两种协议的通讯,将接收到的请求解析后路由到业务bundle去执行并返回给调用方
osmp-intf-define:抽像出来的核心框架的接口定义,基中最主要是两个接口 BaseDataService.java(定义的基本服务接口)、ServiceInterceptor.java(定义的基本拦截服务接口)
osmp-service:服务组件,实现osgi的BundleListener和ServiceListener监听器,当有bundle被安装、升级时,将服务注册到zookeeper上,同时提供给osmp-http来查询服务将调用服务
osmp-jdbc:数据持久层组件,提供基于druid数据源的动态创建和消毁,同时提供了一套基于jdbc-template并模仿mybatis的数据持久层接口,sql的动态管理功能等。
osmp-resource:提供全局的资源配置管理
osmp-log:全局的日志监控和管理
osmp-cache-define:osgi环境下全局组件业务cache定义
osmp-osgi-cache:osgi环境下基于ehcache的业务缓存,可以通过osmp-web实时动态的修改缓存策略,比如开启基于方法的缓存,动态调整失效、存活时间,也能方便的扩展为通过redis的分布式缓存。
osmp-config:全局配置管理,配置osmp-web(管理后台)下发配置和参数
osmp-monitor:使用camel写的一个简单的性能监控组件,主要用到了camel-http,camel-quartz,定时将服务器cpu、memory信息推送到osmp-web(管理后台)
osmp-util:工具组件
osmp-tools:工具组件
osmp-zookeeper:zookeeper工具组件
osmp-demo:简单的基于osmp下业务开发的demo
管理后台
osmp-web:osmp的管理后台,这个不多说,直接跑在tomcat,jetty里。
osmp-cache:web工程下的cache组件,可以通过页面动态修改缓存策略,开启,关闭基于方法级别的业务缓存。
提供给业务方的sdk
osmp-client:提供给业务方的sdk client,通过此组件监听zk上注册的服务,服务器的状态,及osmp-web发布的策略,进行服务发布、服务路由、负载均衡算法,基于参数级别的灰度等。
各基础业务组件有相互依赖关系,最小部署单元如下:
osmp-http、osmp-intf-define,osmp-service、osmp-utils、osmp-tools
由于提交的代码当中要跑起来,其他组件达到ppt当中的效果,所以其它组件也必须要部署,如果只想单机跑的话。以上组件就ok了,但是可能要稍微的注释掉一些代码才行!
基础组件就介绍到这儿。如果有不太清楚的欢迎加群:335898216 交流!
下一篇将介绍osmp-http 在osgi环境下通过 cxf发布restful服务和webservice服务,将请求解析后调用业务组件提供的服务!
相关推荐
《 OSGi实战》是学习OSGi的全面指导,利用与架构和开发人员相关...《OSGi实战》面向OSGi规范的使用者,系统、全面、深入地阐述OSGi的重要特性及其使用方法,还介绍了某些技术的低层实现细节,引领读者畅游OSGi的世界。
在OSGI实战教程中,首先需要了解OSGI(Open Services Gateway Initiative)是一个由众多IT公司共同制定的Java模块化标准规范,旨在实现软件组件的热插拔和服务动态管理。OSGI技术允许应用程序通过动态地安装、启动、...
### OSGI实战知识点概述 #### 一、序言与背景介绍 - **背景与动机**:作者在工作之初便对插件体系结构产生了浓厚兴趣,尤其关注ant、maven等构建工具及其插件系统。这表明作者对于软件模块化、可扩展性的重视。 - ...
6. **社区与资源**:介绍OSGI社区,相关的开源项目,以及获取更多帮助和信息的渠道。 7. **案例研究**:分析实际项目中的OSGI应用,展示其在解决特定问题上的效果。 通过这两本书的学习,读者不仅能掌握OSGI的基本...
为了弥补OSGi规范在应用...《OSGi实战》还介绍了某些技术的低层实现细节,引领读者畅游OSGi的世界。 《OSGi实战》面向OSGi规范的使用者,通过精彩的讲解和贴近实战的丰富示例,帮助读者完成“入门-进阶-提高”三级跳。
"OSGI实战"和"OSGI进阶"两份文档提供了深入理解OSGI的理论和实践指导,涵盖基础概念、核心API、实战案例以及高级特性,是学习OSGI的宝贵资料。其中,"OSGI实战.pdf"着重于实践操作,而"osgiopendoc2.pdf"可能包含了...
《OSGi实战》还介绍了某些技术的低层实现细节,引领读者畅游OSGi的世界。 《OSGi实战》面向OSGi规范的使用者,通过精彩的讲解和贴近实战的丰富示例,帮助读资源太大,传百度网盘了,链接在附件中,有需要的同学自取...
1. **开发环境搭建**:如何使用Eclipse和Equinox等工具创建和管理OSGI项目。 2. **案例分析**:通过具体的应用场景,如构建可插拔的Web服务器、数据库连接池等,展示OSGI的优势。 3. **部署与打包**:学习如何将OSGI...
1. Equinox:由Eclipse基金会开发,是OSGI参考实现之一,广泛用于Eclipse IDE和其他企业级项目。 2. Oscar:Apache Felix项目的一部分,也是一个流行的开源OSGI实现。 3. Knopflerfish:轻量级且功能丰富的OSGI框架...
1. **OSGi基础**:首先,会介绍OSGi的基本概念,包括bundle、服务、生命周期管理等,以及OSGi框架如何处理模块间的依赖关系。 2. **Bundle的创建与管理**:阐述如何编写符合OSGi规范的Java代码,构建bundle,并且...
1. **OSGI基本概念**:介绍OSGI的基本架构,包括Bundle、Service、生命周期管理(启动、停止、更新、卸载等)以及依赖管理。 2. **模块化开发**:讲解如何将Java项目划分为多个独立的模块,并使用OSGI的API进行打包...
1. **构建OSGi应用**:使用Maven或Gradle的OSGi插件,可以方便地构建符合OSGi规范的模块化项目。 2. **Spring与OSGi集成**:Spring Dynamic Modules (SDM) 提供了将Spring应用与OSGi环境结合的工具,使Spring应用...
### OSGi实战进阶篇知识点总结 #### 一、序言与背景 - **序言**:作者从个人经历出发,表达了对于插件体系结构的兴趣,并提到了早期接触的一些工具,如Ant和Maven,这表明作者对于构建工具及模块化开发有着深厚的...
OSGI(Open Services Gateway ...总之,《OSGI实战》是一本全面介绍OSGI技术的书籍,适合希望通过模块化方式提高Java应用程序灵活性和可维护性的开发者。通过阅读和实践,你可以掌握OSGI的精髓,提升你的Java开发技能。
《OSGI实战》这本书主要...通过《OSGI实战》这本书,读者将深入理解OSGI技术,并能将其应用于实际项目中,解决开发过程中的各种挑战。无论是初学者还是经验丰富的开发者,都能从中受益匪浅,提升Java开发的效率和质量。
《OSGi实战》一书由BlueDavy撰写,是一份详尽的OSGi入门与实战指南,适合初学者和有经验的开发者深入了解OSGi框架及其应用。以下是对该书籍核心知识点的总结: ### OSGi简介 OSGi(Open Service Gateway Initiative...
OSGI的核心概念是服务和模块化,它的出现解决了Java应用程序的复杂性问题,使得组件之间的依赖关系更加清晰,同时也支持动态部署和更新。 在"OSGI实战"中,你将学习到如何使用OSGI来开发模块化的Java应用。实战部分...
《OSGI实战》这本书可能是为了指导开发者如何有效地使用OSGI进行实际项目开发。下面我们将深入探讨OSGI的关键概念、优势以及如何在实践中应用。 1. **模块系统**:OSGI的核心是它的模块系统,每个模块(bundle)都...
网上收集的OSGI资料. 包括: OSGi原理与最佳实践(精选版).pdf OSGI实战和源码.rar osgi进阶.pdf Introduce.OSGi.ppt OSGi.in.action.ppt r4.cmpn.pdf r4.core.pdf r4.enterprise.pdf