VRESCo:面向服务计算的维也纳运行时环境解析
1. 动态服务调用
在 VRESCo 中,Web 服务调用借助 Daios 框架来执行。与许多依赖代码生成和客户端存根来调用服务的 Web 服务客户端框架(如 Apache Axis 2)不同,Daios 旨在实现与 Web 服务的无存根通信。而且,Daios 框架具有协议独立性,能够透明地区分和处理 SOAP 与 REST 调用。这是通过使用抽象的 Daios 消息格式实现的,该格式以高级方式描述请求和响应消息,将特定协议的细节留给 Daios 的底层内部层处理。
1.1 动态绑定
客户端动态绑定到服务的能力通常被认为是面向服务架构(SOA)的关键优势之一。但在实践中,绑定往往在设计时使用生成的存根完成。Daios 解决了这个问题,提供了基于动态调用原则构建的服务调用框架。绑定到服务的过程包含以下步骤:
1. 检索和解析服务接口描述 :客户端需要获取并解析服务接口描述或服务契约。对于使用 SOAP 作为消息协议的 Web 服务,WSDL 是标准描述语言;而对于基于 REST 的服务,通常使用 WADL(Web 应用程序描述语言)。通常,WSDL 和 WADL 解析都涉及处理 XML 模式定义(XSD),这些定义了交换文档的数据类型。
2. 创建服务代理 :从服务契约的内存表示创建服务代理。当客户端发出调用时,提供的输入会与服务契约中包含的消息定义进行匹配。
绑定发生的频率和时机决定了代理的准确性,同时也会影响运行时性能,因为重新绑定会带来一定的开销。VRESCo 区分了以下重新绑定策略:
-
超级会员免费看
订阅专栏 解锁全文
30

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



