.Net WCF如何分离内部和外部Web服务

时间:2014-09-23 08:58:36

标签: .net web-services wcf visual-studio wcf-binding

我们有以下物理架构:

Web前端在防火墙的DMZ环境中运行。

WCF服务层在另一个防火墙DMZ环境中运行。

Biztalk ESB层在我们的核心局域网上运行。

后台服务应用程序层也可在我们的核心局域网上运行。

WCF层是UI和ESB /后台层之间的桥梁。

用户界面 - > WCF已超过https

WCF< - > Biz已经过了net.tcp

因此,这需要我们的外部和内部服务使用不同的端点。

问题是,如何最好地将它们分开?

1)具有内部和外部端点.svc类的单个WCF项目以及具有2个端点配置混合的web.config

2)每个内部和外部端点的WCF项目

1 个答案:

答案 0 :(得分:1)

我坚持1.

拥有一个包含服务合同的项目,以及这些合同的不同实现,具体取决于是否需要解决身份验证/防火墙问题。

不同的实现将具有不同的名称和地址绑定以及所选的服务实现。

您可能有一个不同的项目来解决基础架构问题,例如选择哪种基础架构布局的服务实现。