据我所知,为了设置Service Bus,我们需要
WCF了解Service Bus End Point,但Service Bus Relay如何知道将消息中继到全世界特定WCF端点的位置?
感谢。
答案 0 :(得分:1)
Service Bus不知道端点在哪里。端点建立与Service Bus的连接,然后Service bus使用该连接将请求(从请求的WCF客户端中继)发送到WCF端点。
服务总线中继的全部意义在于,由于网络/ NAT /防火墙问题,Azure与本地计算机之间没有连接。从本地计算机到Azure只有一个连接。
答案 1 :(得分:1)
Service Bus WCF服务中继绑定实现与相应的常规WCF服务绑定相同的行为,但有一个主要区别。
通常,WCF服务绑定设置为从客户端接收 传入 连接。但是,中继服务绑定旨在与Azure上的中继服务建立 传出 连接。绑定旨在使此连接的控制通道始终处于活动状态。来自客户端的消息到达Azure上的WCF服务的中继端点,并根据绑定类型通过各种机制转发到WCF服务。因此,即使初始连接建立为出站连接,中继服务绑定也会使WCF服务看起来正在从客户端接收传入连接。