公共对象请求代理架构的三个层次 #
- 对象请求代理(Object Request Broker,ORB)
最底层的对象请求代理规定了分布对象的定义(接口)和语言映射,实现对象间的通信和互操作,是分布对象系统中的“软总线”;
- 公共对象服务
在ORB 之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务;
- 公共设施
最上层的公共设施则定义了构件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。
CORBA调用图 #
- 伺服对象(Servant) CORBA对象的真正实现,负责完成客户端请求。
- 对象适配器(Object Adapter)用于屏蔽ORB内核的实现细节,为服务器对象的实现者提供抽象的接口,以便他们使用ORB内部的某些功能。
- 请求代理( Object Request Broker)解释调用并负责查找实现该请求的对象,将参数传给找到的对象,并调用方法返回结果。客户不需要了解服务对象的位置、通信方式、实现、激活或存储机制。
- POA POA是对象实现与 ORB 其它组件之间的中介,它将客户请求传送到伺服对象,按需创建子 POA,提供管理伺服对象的策略。