OSGi 分布式通讯组件 R-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 实现流程



 

  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,等待通讯返回。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值