当前位置:必发365电子游戏 > 操作系统 > 客户端将消息发送给服务来请求工作
客户端将消息发送给服务来请求工作
2019-12-19

什么是WCF

Windows Communication Foundation(WCF卡塔尔是由微软开销的黄金时代多元协助数据通讯的应用程序框架,能够翻译为Windows 通信支出平台。

结缘了原始的windows通信的 .net Remoting,WebService,Socket的机制,并融入有Http和Ftp的连带才能。WCF是对这一个技艺的集结
必发365电子游戏 1

据悉MSDN上的概念:WCF为.NetFramework 提供了三个根基,使其能够编写代码,以在组件、应用程序、系统里面展开通讯。WCF的规划遵守的是面向服务的尺度。服务是指能够由此消息与之进行相互影响的豆蔻年华段代码。服务是消沉的。它们等待传入消息随后才起来职业。顾客端是发起者,客商端将音信发送给服务来呼吁职业。

是Windows平台上支付分布式应用最棒的实践方法。

 必发365电子游戏 2

如果大家要为一家汽车租借集团付出多个新的应用程序,用于租车预订服务。该租车预定服务会被四个应用程序访谈,包罗:呼叫中央(Call Center),基于J2EE的租车预定服务以至合营同伴的应用程序(Partner Application)
必发365电子游戏 3

动用WCF,该技术方案的落到实处就便于多了。如图中所示,WCF可用从前述全部景况。由此,租车预定应用程序使用那生龙活虎种手艺就能够实现其持有应用程序间的通讯。
WCF可应用Web服务举行通讯,由此与相符帮衬SOAP的别的平台(举个例子基于J2EE的主流应用程序服务器)间的互操作性就变得老妪能解。
还足以对WCF进行配备和扩大,以便与运用并不是基于SOAP的信息的Web服务拓宽通讯。
性格是绝大多数事务中重大的杜撰事项。开辟WCF的指标便是要使之形成Microsoft所开拓的进程最快的布满式应用程序平台之风流洒脱。
WCF是提供统生机勃勃的,可用来创立安全、可信的面向服务的接受的神速开垦平台。
WCF具宛如下的优势:   
   1、统一性
   2、互操作性
   3、安全与可信赖任
   4、兼容性

接头面向服务(Service-Oriented-Architecture)

SOA是指为了缓和在Internet情况下业务合併的内需,通过连接能做到一定职分的单身效用实体达成的大器晚成种软件系统构造。SOA是三个构件模型,它将应用程序的不相同功能单元(称为服务)通过那个服务中间定义优质的接口和左券关系起来。
SOA建议这两天系统应该足够灵活,进而允许在不打乱当前功成名就运维的系统架构和底蕴构造的前提下,更改已部分体系构造。
SOA原则:

WCF体系结构简单介绍

必发365电子游戏 4

协议与认证

左券定义新闻系统的各样方面。

数量左券:劳动中的参数;

音信公约:行使SOAP合同一定的音讯部分;

劳动协议:劳务中的方法;

必发365电子游戏,计策与绑定:策略设置安全或别的标准化,绑定钦点传输方式与编码。


劳动运维时

劳务运营时期的行事调节

节制行为:调整管理的音信数;

错误行为:现身当中错误时所处理的操作;

元数据表现:是或不是向外提供元数据及元数据的提供方式;

实例行为:可运维的劳务实例数目;

事务行为:处总管务;

调治行为:调节WCF管理音信的艺术;


新闻传递

音信传递层:表达数据的交流格式和传导方式。

音讯传递层由通道(信道)组成,通道是对新闻举办拍卖的组件,肩负以肖似的不二等秘书技对消息实行规整和传递。通道用于传输层、公约层、及音信获得。各档案的次序的坦途组成了信道栈。

大路对新闻和音讯头进行操作,服务运作时对消息正文实行操作。

三种类型:传输通道 与 公约通道。

传输通道:读取和写入来自互连网的音讯,传输通道通过编码器将音信转变为互连网传输使用的字节流,以致将字节流调换为新闻。传输通道示比如:HTTP通道、命名管道、TCP、MSMQ等;

和睦通道:通过读取或写入消息头的办法来落实音信合同,左券通道示比方:WS-Security,WS-Reliability。


承接和激活

劳动宿主: 担任WCF服务的生命周期和上下文的操作系统进度,担任运行和终止WCF服务,并提供控克服务的为主管理职能。

WCF幼功概念介绍

必发365电子游戏 5

契约(Contract)

WCF 的基本概念是以公约(Contract卡塔尔(英语:State of Qatar)来定义双方联系的说道,合约必要求以接口的艺术来反映,而事实上的劳务代码一定要由那些合同接口派生并达成。合约分成了八种:

  数据合约 (Data Contract卡塔尔(قطر‎,订定双方联系时的多少格式。服务合约 (Service Contract卡塔尔(英语:State of Qatar),订定服务的定义。操作合约 (Operation Contract卡塔尔,订定服务提供的艺术。音讯合约 (MessageContract卡塔尔国,订定在通讯时期改写新闻内容的正规化。多个 WCF中的合约,就像同下列代码所示:

[csharp] view plain copy 必发365电子游戏 6必发365电子游戏 7

  1. using System;  
  2. using System.ServiceModel;  
  3. namespace Microsoft.ServiceModel.Samples{  
  4.   
  5. [ServiceContract(Namespace = " 服务协议  
  6. public interface ICalculator  
  7. {  
  8. [OperationContract] // 操作合约  
  9. double Add(double n1, double n2);  
  10.   
  11. [OperationContract] // 操作合约  
  12. double Subtract(double n1, double n2);  
  13.   
  14. [OperationContract] // 操作合约  
  15. double Multiply(double n1, double n2);  
  16.   
  17. [OperationContract] // 操作合约  
  18. double Divide(double n1, double n2);  
  19. }  
  20. }  

绑定 (Binding)

  由于 WCF 支持了 HTTP,TCP,Named Pipe,MSMQ,Peer-To-Peer TCP等合计,而 HTTP 又分为主题HTTP 扶助(BasicHttpBinding卡塔尔(英语:State of Qatar)以至 WS-HTTP 接济 (WsHttpBinding卡塔尔(قطر‎,而 TCP亦支持NetTcpBinding,NetPeerTcpBinding等通讯格局,因而,双方应当要合併通讯的构和,何况也要在编码以致格式上要享有意气风发致。

  二个安装通讯公约绑定的示范如下:

[html] view plain copy 必发365电子游戏 8必发365电子游戏 9

  1. <?xml version="1.0" encoding="utf-8" ?>  
  2. <configuration>  
  3. <system.serviceModel>  
  4. <!-- 设定服务系结的新闻 -->  
  5. <services>  
  6. <service name=" CalculatorService" >  
  7. <endpoint address="" binding="wsHttpBinding"bindingConfiguration="Binding1" contract="ICalculator"/>  
  8. </service>  
  9. </services>  
  10. <!-- 设定通信协定系结的情报 -->  
  11. <bindings>  
  12. <wsHttpBinding>  
  13. <binding name="Binding1">  
  14. </binding>  
  15. </wsHttpBinding>  
  16. </bindings>  
  17. </system.serviceModel>  
  18. </configuration>  

  尽管 WCF 也能够应用 SOAP做通讯格式,但它和过去的 ASP.NETXML Web Services不一致,由此有风姿罗曼蒂克对能力小说中,会将 ASP.NET 的 XML Web Services称为 ASMX Service。

WCF 的服务能够挂载于 Console Application,WindowsApplication,IIS (ASP.NET卡塔尔(قطر‎Application,Windows Service以至 Windows Activation Services中,但大多都会挂在 Windows Service。

重大的种类内置绑定:

必发365电子游戏 10

系统绑定扶植的据守:

必发365电子游戏 11

各样绑定格局的属性比较:

必发365电子游戏 12

终结点

–终结点是用来发送或 采撤销息(或施行那二种操作)的构造。终结点包涵两个定义新闻能够发送到的指标地的职分(地址)结点,满含八个概念音讯能够发送到的目标地的职位(地 址)、一个陈说音信应什么发送的通讯机制标准(绑定)以致对于能够在该岗位发送或收取(或两方皆可)的意气风发组新闻的定义(服务协定)—该定义还陈诉了足以发送何种音讯。

终结点的地址由EndpointAddress 类表示,该类包罗一个意味着服务地方的联结能源一定符(U智跑I卡塔尔,大比比较多传输之处ULX570I 包罗多个部分。
例如,
“ 具有以下五个部分:
– 方案:http:
– 计算机:www.cnblogs.com
– (可选)端口:80
– 路径:/jiekzou

元数据

所谓的“元数据”正是描述数据的数目,即描述当前劳动有啥服务左券、方法协议和数码左券以致终结点的新闻。而“元数据终结点”正是向外围揭破元数据的终结点。当客商端增添WCF服务援用的时候,会率先通过元数据获得劳动器端的公约音信、终结点消息,然后依据那些音信在客户端创立了代理类,大家在顾客端调用WCF服务的历程实际上固然经过代理类调用WCF服务的长河。

宿主(Host):风华正茂种选择程序域和进程,服务将要该情形中运营。

WCF和Webservice的区别

1.WebService*客户端将消息发送给服务来请求工作。*:**严刻来讲是行业规范,不是技艺,使用XML扩大标识语言来表示数据(这些是跨语言和平台的重大)。微软的Web服务实现称为ASP.NET Web Service.它利用Soap轻便对象访谈公约来落实布满式意况里应用程序之间的数码人机联作。

WSDL来促成劳务接口相关的陈述。此外Webservices能够注册到UDDI中央.供其顾客搜索使用。后来微软做了ASP.NET Web Service的安全,品质,数据加密、解密,托管宿主等多地点的恢弘,称为WSE系列,这么些是过犹不如产品,最高到WSE3.0.新生即便WCF时期。

2.WCF**:**其实一定水平上就是ASP.NET WebService,因为它补助Web Service的行当标准和大旨左券,由此ASP.NET WebService和WSE能做的作业,它大概都能胜任,跨平台和语言更不成问题(数据也支撑XML格式化,何况提供了团结的格式化器)。

下一篇:没有了