OSGi 分布式通訊組件 R-OSGi

jopen 12年前發布 | 82K 次閱讀 OSGi

R-OSGi 是一套適用于任意滿足 OSGi 架構的分布式通訊組件。它以 jar 的形式發布,部署容易,使用也較為便捷。

概括下用戶只需要完成如下幾步。

在 Server 端:

  • OSGi 容器內啟動 R-OSGi 的 Bundle
  • Service 的 Bundle 里 MENIFEST 文件中 import 對 R-OSGi 的引用
  • 將需要被 Client 調用的接口暴露給 R-OSGi 模塊即可。

在 Client 端:

  • OSGi 容器內啟動 R-OSGi 的 Bundle
  • Client 的 Bundle 里 MENIFEST 文件中 import 對 R-OSGi 的引用
  • 取得 R-OSGi 暴露的 Service 調用接口即可

R-OSGi 運行流程

下圖簡要說明了 R-OSGi 實現的流程及原理:

圖 2. R-OSGi 實現流程
OSGi 分布式通訊組件 R-OSGi

  1. 遠程 Service 通過 R-OSGi 框架注冊到 OGSi 容器。
  2. R-OSGi 在 OS 上打開一個端口(默認 9278)來創建 Socket 監聽器。
  3. Client 端 Bundle 啟動時調用指定 Server 的默認端口,請求 Socket 通信。
  4. 在本 OSGi 容器內生成一個代理 Bundle,用于本地 Client 調用。
  5. 在 Client 端注冊簽名一樣的 Service。
  6. 客戶端調用 Service,實際上調用的是通過代理 Bundle 調用遠程的 Service,等待通訊返回。

項目主頁:http://www.baiduhome.net/lib/view/home/1340808375733

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!