是否可以使用Azure Service总线中继连接到Azure上的WCF Web服务,而无需更改WCF服务

时间:2016-07-14 11:27:08

标签: .net azure azureservicebus azure-servicebusrelay

我必须在WCF服务中添加服务总线端点,以便使用中继从AZure服务总线与其进行通信。

现在我在内部部署的服务很少,我的配置无法改变。是否可以在不添加servicebus端点的情况下与那些进行通信?

我可以访问的一项服务,我添加了另一个服务端点,如此及其工作

   <service name="Service.ProblemSolver">
        <endpoint contract="Service.IProblemSolver"
                  binding="netTcpBinding"
                  address="net.tcp://localhost:9358/solver"/>
        <endpoint contract="Service.IProblemSolver"
                  binding="netTcpRelayBinding"
                  address="sb://namespace.servicebus.windows.net/solver"
                  behaviorConfiguration="sbTokenProvider"/>
    </service>

但是,如果不添加新的绑定,是否可能?

1 个答案:

答案 0 :(得分:1)

据我所知,如果我们想公开我们的内部部署端点,有两种方法:

  1. 打开端口和防火墙或NAT。在这种情况下,您可以在不添加新端点的情况下与这些服务进行通信。它类似于将您的内部部署端点直接暴露给Internet。但我不建议将其用于安全问题。

  2. 使用Azure服务总线服务。但是,您需要将终结点设置更改为原始帖子(https://azure.microsoft.com/en-us/documentation/articles/service-bus-dotnet-hybrid-app-using-service-bus-relay/)。

  3. 关于您的要求,如果有必要,您可以使用Azure Service Bus配置设置将内部部署服务封装到新的WCF服务中