WCF服务一:WCF服务简介
一、回顾开发历史:
软件架构的设计经历了:从面向对象程序,到面向组件程序设计,再到面向服务程序设计。这三种方式都致力于同一个目标:封装和重用。
面向对象程序设计:类封装功能并提供代码重用。
面向组件程序设计:用以共享封装了可重用类的二进制文档。最初,这一点只是针对本机,随着COM,DCOM和.NET Remoting的问世,才发展到分布式环境。虽然这些分布式的方法不尽相同,但是都可以实现跨进程、跨机器。面向组件程序设计有很多局限性,最明显的局限是与一些特定技术的耦合过深。例如:JAVA客户端如何调用COM组件,.NET如何调用EJB,这些局限的产生均是协议和通信格式的问题。
面向服务(SOA):解决了不同客户之间的通信,也就是不必担心彼此采用了不同的技术。
二、什么是WCF服务
WCF:即Windows Communication Foundation(Windows通信基础)的简称,是微软分布式应用程序开发的集大成者,是对现有Windows平台下所有分布式通信技术的整合,例如.NET Remoting、MSSQ。以通信范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于Internet。WCF可以运行在ASP.NET,EXE,WPF,Windows Forms,NT Service,COM+上面。WCF支持的协议包括TCP,HTTP。
WCF的优势:
1 统一性:WCF是对于.NET Remoting,Enterprise Service,MSMQ等技术的整合。
2 互操作性:由于WCF最基本的通信机制是SOAP协议,这就保证了系统之间的互操作性,即使是运行不同的上下文中。可以跨进程、跨机器甚至于跨平台的通信,只要支持标准的Web Service。应用程序可以运行在Windows操作系统下,也可以运行在其他的操作系统。
3 兼容性:WCF充分的考虑到了与旧有系统的兼容性。安装WCF服务并不会影响原有的技术。
4 高效开发:维护性、操作性、生产效率提升,开发环境的无缝集成。