传统方式的服务绑定
在当今的软件开发中,服务绑定是一个关键概念。无论是本地服务还是远程服务的绑定,都不是 ESB 或 JBI 带来的创新,多年来我们一直在以多种方式进行着这项工作。本文将深入探讨“绑定”的含义,并介绍如何将远程可用的服务(以 EJB 组件的形式)绑定到中间层,并通过像 HTTP 这样对防火墙友好的通道进行暴露。
1. 绑定的含义
在两个应用程序或服务进行交互以交换消息的基本场景中,应用程序以消息的形式共享数据。一个应用程序发送消息,另一个接收消息,消息通过消息通道在发送方和接收方之间交换。
应用程序通过消息端点连接到消息通道,将应用程序或服务连接到合适端点的过程称为“绑定”。从技术角度来看,绑定定义了服务的抽象接口(PortType)如何与特定的传输协议和编码模式绑定。绑定交互涉及服务请求者和提供者,当应用程序使用服务描述创建要发送给服务提供者的消息时,就是在进行服务绑定。
由于多个应用程序或服务通过消息通道相互交互,它们需要处理多种传输机制和消息格式。端点的功能是将消息从一种格式转换为另一种格式,这样应用程序的其余部分在交换消息时,对消息格式、消息通道或与其他应用程序通信的其他细节了解甚少。消息端点代码是针对应用程序和消息系统的客户端 API 定制的。当我们编写针对消息 API(如 JMS)的程序时,就是在开发端点代码,这可以通过手动开发底层管道代码,或使用适当的客户端 API 和运行时工具自动生成代码来实现。
2. Apache SOAP 绑定
在不使用 JBI 或 ESB 框架的情况下,我们可以使用 Apache 开源 SOAP 栈来实现绑定。
超级会员免费看
订阅专栏 解锁全文
3936

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



