隨筆-72  評論-20  文章-0  trackbacks-1
          OpenCore純插件體系結(jié)構(gòu)中的核心概念包括:微內(nèi)核、插件與服務(wù)。

          微內(nèi)核
          (MicroKernel)提供基礎(chǔ)的插件與服務(wù)架構(gòu);負(fù)責(zé)插件的生命周期管理,包括插件的安裝(Install)、啟用(Activate)、停止(Deactivate)與卸載(Uninstall);負(fù)責(zé)服務(wù)的生命周期管理,包括服務(wù)的注冊(Register)、發(fā)現(xiàn)(Lookup)、啟動(Start)、停止(Stop),服務(wù)間的依賴綁定。

          OpenCore微內(nèi)核分兩層:
          1. 應(yīng)用系統(tǒng)的核心層:以OSGi為基礎(chǔ)
          2. 增強層:IoC實現(xiàn)、擴展點機制與RMI插件

          插件(Plugin)OpenCore是一個純插件結(jié)構(gòu)的系統(tǒng),包括內(nèi)核在內(nèi)的所有特性都由插件構(gòu)成。插件是對系統(tǒng)中靜態(tài)結(jié)構(gòu)方面的抽象,滿足某種約束并提供自描述的物理軟件模塊。OSGi中插件叫Bundle,物理上是一個提供自描述文件(MANIFEST.MF)的Jar文件。插件可以被動態(tài)的安裝、激活、去激活與卸載。插件包含多個服務(wù)(Service)對象。

          插件間的依賴關(guān)系包括兩種:
          1. 物理依賴,即插件間的Class依賴,例如A插件Import B插件的Class
          2. 邏輯依賴,插件A中的服務(wù)依賴插件B中的服務(wù)。
          插件的概念描述圖如下:



          服務(wù)(Service)系統(tǒng)中動態(tài)結(jié)構(gòu)方面的抽象,是運行時的概念,是具有良好接口與自我描述的業(yè)務(wù)功能提供者。Java平臺上是一個具有良好接口對象實例。服務(wù)可以被注冊、發(fā)現(xiàn)、啟動與停止。運行時,服務(wù)間在同一JVM內(nèi)通過傳引用(By-Reference)依賴協(xié)作,在不同JVM內(nèi)通過RMIJMSREST等傳值方式(By-Value)通信協(xié)作。

          服務(wù)的概念描述圖如下:



          服務(wù)間依賴關(guān)系(Dependency and Relations)有三種:

          1. 進(jìn)程間通過連接器(Connector)以傳值(By-Value)方式通信和協(xié)作
          2. 進(jìn)程內(nèi)通過Java接口調(diào)用以傳引用(By-Reference)方式通信協(xié)作
          3. 進(jìn)程內(nèi)一個服務(wù)可以作為對另一服務(wù)的擴展

          服務(wù)間關(guān)系的概念描述圖:


          posted on 2008-01-15 18:26 前方的路 閱讀(780) 評論(0)  編輯  收藏 所屬分類: 軟件架構(gòu)
          主站蜘蛛池模板: 黑山县| 屏东市| 康乐县| 德庆县| 龙井市| 临邑县| 库尔勒市| 塔城市| 潞城市| 富顺县| 大邑县| 德钦县| 镇巴县| 江孜县| 黎平县| 宝鸡市| 海城市| 红桥区| 建瓯市| 托克托县| 桓仁| 吉木萨尔县| 大邑县| 丰城市| 共和县| 青海省| 荆州市| 兴化市| 迭部县| 衢州市| 阳高县| 舞钢市| 观塘区| 庆安县| 麦盖提县| 奈曼旗| 宜章县| 隆化县| 漳平市| 华坪县| 石嘴山市|