我正在尝试理解WCF是什么,但无法形象地理解它如何增加价值(阅读msdn没有帮助)。我过去曾经使用过COM,并且了解webservices。能否有人解释一下什么是WCF以及它的优缺点(也许它如何与COM相关或取代COM等)?
如果我能够将架构布局可视化,我就可以开始理解每个组件所承担的功能。
提供参考网站的链接也将非常有用。
谢谢
如果我能够将架构布局可视化,我就可以开始理解每个组件所承担的功能。
提供参考网站的链接也将非常有用。
谢谢
我不建议将WCF与COM进行比较。
Windows Communication Foundation主要涉及通信 - 特别是从WCF网站上来看,它“提供了一个统一的编程模型,快速构建面向服务的应用程序,这些应用程序可以在Web和企业之间进行通信。”
这确实是一种不同的进程间通信方法,将其统一起来。它使您可以在进程之间使用干净的、面向服务的API进行所有通信,并轻松更改服务所使用的底层技术(例如:从HTTP切换到TCP到Pipes等)。
通过利用WCF,您可以使进程以清晰、一致的方式进行通信。相同的API可用于与Web服务进行通信,在两个桌面应用程序之间传递数据,或在桌面和系统上的服务之间进行通信。在所有情况下,您都可以轻松地切换所使用的协议等。
这提供了很多灵活性,只需要一个工具包。
主要的缺点可能在某些特定情况下表现为性能问题。使用WCF会增加(轻微的)开销,因此在某些情况下,自己进行低级套接字开发将获得更好的性能。除非你正在编写实时游戏或类似的东西,否则涉及低级通信协议的开发工作量不值得收益。
WCF是一个非常通用的跨进程/跨机器通信框架。就是这样。对于.NET,有以下选项:自定义网络通信、Web服务、.NET远程调用。WCF替代了Web服务(向后兼容)和.NET远程调用(不向后兼容),提供了丰富的通信选项和功能。它可以使用不同的传输层 - TCP、Web服务、MSMQ。