高阶组件服务架构(HOC - SA)技术解析
1. HOC - SA 基础与 SOAP 通信
在 HOC - SA 中,SOAP 请求包含额外的类型信息,用于将特定标识符绑定到 XML 命名空间,同时还定义了保存参数的数组以及请求的 HTTP 编码声明。通常,SOAP 请求并非手动编写,网格中间件的重要任务之一就是自动对这类文档进行解码、编码并通过网络传输。
从远程接口的 WSDL 版本(独立于编程语言)出发,Globus 会为 SOAP 通信创建服务器端存根和客户端存根。以图像过滤为例,客户端存根是实现了 LiftingHOC 接口的 Java 对象 lh,它能透明地发出 SOAP 请求,就好像处理过程是在本地进行的一样。
HOC 除了代码之外还必须包含配置文件,这是由其远程接口的两个显著特点决定的:
- Web 服务操作无面向对象特性 :组件中的方法成为 Web 服务的操作,但这些操作与数据对象或其他程序实体之间没有隐式连接。因此,HOC 开发者必须明确配置 WS 资源来表示状态数据。
- 代码携带参数映射问题 :由于 WSDL 中没有为需要自身接口的参数提供对应类型,中间件必须将代码携带的参数映射到基本类型。例如,Lifting - HOC 的参数 f 需要 Function 接口,并通过配置中的基本标识符进行声明。
为了在 HOC - SA 中交换代码,开发了代码服务。该服务的核心思想是将代码参数最常用的接口(如 Function)以表格形式公开,将每个接口与一个基本标识符关联起来。这样,远程用户可以通过向 HOC 传递接口的标识符来引用该接口,HOC 再使
HOC-SA技术解析与实践
超级会员免费看
订阅专栏 解锁全文
63

被折叠的 条评论
为什么被折叠?



