WCF全面解析学习(1)
- SOA的基本概念和设计思想
SOA并不是仅仅采用Web服务的架构,Web服务只是一种实现SOA的理想技术手段。SOA依赖于开放的标准。SOA的一个目标是让不同的厂商开发的服务能够相互操作。
SOA支持跨平台
- WCF是对现有分布式通信技术的整合
- Net.TCP
TCP全称为Transport Control Protocol(传输控制协议),在整个TCP/IP中处于核心地位。
- TCP是基于连接的传输协议,在开始进行数据传输之前,通过客户端和服务器端之间的3次“握手”创建连接;在结束传输之后,通过4次“握手”终止连接。
- TCP是有状态的,由于数据传输在一个确定的连接中进行,因此可以保持每次数据传输的状态。
- TCP支持全双工通信,一旦连接成功创建,数据就可以在两个方向上同时传输。
- TCP支持可靠通信,IP协议本身提供的数据传输是不可靠的,数据的可靠传输只能通过TCP来保证。
WCF通过NetTcpBinding支持基于TCP的传输。对于TCP的URI,它的传输协议前缀均为net.tcp://。Net.TCP默认的端口为808,下面两个URI完全是等效的。
net.tcp://artech.com:808/myservices/calculatorservice
net. tcp://artech.com/myservices/calculatorservice
4.Net.Pipe
基于命名管道的URI以net.pipe为前缀,而在基于同一台机器的不同进程间通信中,端口没有任何意义。
net.pipe://127.0.0.1/myservices/calculatorservice
5.Net.Msmq
WCF下基于消息队列的URI具有net.msmq前缀。在主机名称和队列名称之间通过字符private表示私有队列,而对于公有队列的URI,表示队列类型部分则不是必须的。
net.msmq://artech.com/myservices(公有队列)
net.msmq://artech.com/private/myservices(私有队列)
6.如果使用IIS寄宿,无需再通过配置指定终结点的地址,因为.svc文件的地址就是服务的地址。可以指定多个基地址,但是一种传输协议类型只能具有一个唯一的基地址。