Programming WCF Services中文翻译(2)-地址

1.3. Addresses(地址)

WCF,每一个服务关联到一个唯一的地址。地址提供了两个重要的元素:服务地址和传输端点或者传输视图(transport schema)用于和服务通信。本地地址端口指向目标机器的名称、站点或者网络的地址;一个通信端口(port),管道(pipe)或者队列(queue);一个可选的特定的路径或者URI。一个URI是一个通用资源识别符(Universal Resource Identifier,并且可以成为一个唯一的字符串,如:服务名或者GUID

WCF1.0 支持下列传输视图:

·         HTTP

·         TCP

·         Peer network

·         IPC (Inter-Process Communication over named pipes)

·         MSMQ

地址总是有此格式:[base address]/[optional URI]
基地址总是用此格式:[transport]://[machine or domain][:optional port]
这有一些地址的例子:


http://localhost:8001
http://localhost:8001/MyService
net.tcp://localhost:8002/MyService
net.pipe://localhost/MyPipe
net.msmq://localhost/private/MyService
net.msmq://localhost/MyService
 

这是读一个地址的例子:http://localhost:8001/意思是“使用HTTP,通过localhost去访问机器,机器端口8001等待调用。”如果这样一个URI,http://localhost:8001/MyService意思是“使用HTTP,通过localhost去访问机器,机器端口8001下的MyService等待调用。”

1.3.1. TCP Addresses(TCP地址)

TCP地址为了传输使用net.tcp,下面有一个包括端口的例子:

net.tcp://localhost:8002/MyService
当一个端口没有被指定,TCP默认端口为808
net.tcp://localhost/MyService
可以两个TCP地址(相同的宿主,它将在后面的章节进行讨论)共享同一个端口:

net.tcp://localhost:8002/MyService
net.tcp://localhost:8002/MyOtherService
 
使用的基于TCP的地址将贯穿全书。
注意:你能配置共享同一个端口的TCP地址。

1.3.2. HTTP Addresses(HTTP地址)

HTTP地址为了传输使用http,它也能为了安全性使用https。你可以代表性的使用HTTP地址面向外部的基于因特网的服务,也能像下面指定一个端口:
http://localhost:8001
当端口没有被指定,默认是80。和TCP地址相似,相同宿主的两个TCP地址可以共享端点,甚至在相同的机器上也可以。
基于IPC的地址的使用将贯穿本书。

1.3.3. IPC Addresses(IPC地址)

IPC地址为了传输使用net.pipe,它使用的是Windows命名管道机制(Windows named pipe mechanism)。在WCF中,服务使用命名管道仅能从同一个机器上允许调用。因此,你必须清楚指定的本机名称或者localhost。例子:

net.pipe://localhost/MyPipe

你只能每一台机器打开一个命名管线一次,因此它不可能两个命名管线地址在同一台机器上共享一个管线名称。
基于IPC的地址的使用将贯穿本书。

1.3.4. MSMQ Addresses(MSMQ地址)

MSMQ地址为了传输使用net.msmq来使用微软消息队列(Microsoft Message Queue)。你必须指定队列名称。当你处理私有(private)队列,你必须指定队列类型,而不能使用公共(public)队列:

net.msmq://localhost/private/MyService

net.msmq://localhost/MyService

第九章将讨论如何制作队列调用。

1.3.5. Peer Network Address(Peer Network地址)

Peer network地址为了传输使用net.p2p,它使用了Windows peer network transport。你必须指定Peer network名称以及唯一的路径和端口。使用和配置peer network超出了本书的范围,你将了解一些peer network在后续的章节。

Programming WCF Services中文翻译(1)-WCF是什么,服务

posted @ 2009-01-08 10:25  HelloCG  阅读(458)  评论(0编辑  收藏  举报