我们正在定义面向金融应用的面向客户的架构,其中性能和可扩展性是关键要求。 我们提出了n层架构,主要由Web层,应用层(中间层)和数据层WCF组成,它们是Web层和应用层之间的通信机制。一些利益相关者担心WCF会导致性能开销,并希望可配置的架构配置支持进程内调用和WCF。他们的愿景是从进程中调用开始,如果需要考虑水平可伸缩性,则将其更改为基于WCF的通信。
我们正在考虑以下方法:
一种架构方法是引入客户端外观 可以充当Web和应用程序层之间的外观的层。 外观层将简单地隐藏远程调用的复杂性 并允许将外墙轻松换成另一个可能的外墙 可能实现不同的远程呼叫技术(即WCF)
另一种方法是简单地使用WCF并使用不同的绑定 不同的场景。例如,使用IPC绑定(Namedpipes)时 Web和应用程序组件部署在同一台机器上或 在应用程序组件部署中时使用TCP绑定 不同的服务(两端都使用.NET,因此互操作性不是 关注)
我们正在为上述场景寻找合适的架构方法。
请提供建议。