我们有以下物理架构:
Web前端在防火墙的DMZ环境中运行。
WCF服务层在另一个防火墙DMZ环境中运行。
Biztalk ESB层在我们的核心局域网上运行。
后台服务应用程序层也可在我们的核心局域网上运行。
WCF层是UI和ESB /后台层之间的桥梁。
用户界面 - > WCF已超过https
WCF< - > Biz已经过了net.tcp
因此,这需要我们的外部和内部服务使用不同的端点。
问题是,如何最好地将它们分开?
1)具有内部和外部端点.svc类的单个WCF项目以及具有2个端点配置混合的web.config
2)每个内部和外部端点的WCF项目
答案 0 :(得分:1)
我坚持1.
拥有一个包含服务合同的项目,以及这些合同的不同实现,具体取决于是否需要解决身份验证/防火墙问题。
不同的实现将具有不同的名称和地址绑定以及所选的服务实现。
您可能有一个不同的项目来解决基础架构问题,例如选择哪种基础架构布局的服务实现。