【问题标题】:WCF service as internal and internet exposed on different serversWCF 服务作为内部和 Internet 暴露在不同的服务器上
【发布时间】:2026-01-15 04:50:01
【问题描述】:

我必须在 2 台服务器上分发多个应用程序。目前,两台服务器都有公共 IP,可以通过 Internet 请求访问它们。两台服务器都托管多个 Web 应用程序。现在,我必须将这些应用程序分发到服务器(A)中的前端和第二个(B)中的后端,以便服务器“B”没有公共互联网连接,所有请求必须先由服务器“A”输入。我将使用 WCF 将演示文稿与程序的逻辑(在这些服务器之间)分开并进行通信。没关系,但问题是服务器“B”正在托管一些由外部系统使用的公共业务 WCF 服务。这些业务服务需要直接通过 Internet 访问。

我必须提供一个公共服务来接收呼叫,另一个在服务器“B”中处理逻辑并执行数据库操作。

我不知道实现此应用程序分发的最佳方式是什么。我将创建 2 个服务作为最后一个选项。我认为必须有更好的解决方案,例如配置或基础设施。

我希望你能给出一些想法来解决我的问题。

提前致谢。 以色列。

【问题讨论】:

    标签: c# asp.net wcf iis wcf-proxy


    【解决方案1】:

    这意味着你要把服务器“B”暴露在互联网上,对吧? 我会考虑使用 2 个端点和 2 个差异。合同 - 1 个用于您的业务服务(ssl、证书......?),第二个 - 用于服务器“A”操作(net.tcp 绑定,仅为服务器“A”打开端口)。

    【讨论】:

    • 服务器 B 不能有公共端点,它只能由服务器 A 使用。我不知道实现它的唯一方法是在服务器 A 中创建一个接收的服务请求只是将其重新发送到服务器 B 中的服务。