Presentation is loading. Please wait.

Presentation is loading. Please wait.

下一代 Windows 通讯基础 Windows Communication Foundation ( 代码名 “Indigo”) 简介 谢 晓 软件设计工程师 陈耀文 部门经理 Windows 服务器产品部 微软亚洲工程院(上海)

Similar presentations


Presentation on theme: "下一代 Windows 通讯基础 Windows Communication Foundation ( 代码名 “Indigo”) 简介 谢 晓 软件设计工程师 陈耀文 部门经理 Windows 服务器产品部 微软亚洲工程院(上海)"— Presentation transcript:

1 下一代 Windows 通讯基础 Windows Communication Foundation ( 代码名 “Indigo”) 简介 谢 晓 软件设计工程师 陈耀文 部门经理 Windows 服务器产品部 微软亚洲工程院(上海)

2

3 议程 什么是 WCF ? WCF 能够给我们带来什么? 微软在中国的分布式系统研发讨论

4 Windows Communication Foundation 一个统一的,可用于建立 安全、可靠的面向服务的 应用的高效开发平台。

5 每一种技术都有自己的长处以及目标应用场景 客户希望能够整合使用这些技术,建立可靠的并能互相交 互的服务 可交互的 Web 服务 基于 ASP.NET 可扩展远程对象机制 基于 CLR 组件 事务等 基于 COM+ 队列 可靠的消息传送机制 基于 MSMQ 今天的分布式技术

6 演 示

7 统一了现有的各种分布式技术 基于属性( Attribute )的开发 与 Visual Studio.NET 2005 的无缝集成 生产效率 广泛地支持 WS-* 系列通用规范 与现有的微软分布式技术相兼容 可交互性 使得编写松散耦合的服务变得容易 服务的行为及属性(如通讯方式)可以 通过配置来指定 面向服务的开发 Windows Communication Foundation

8 生产效率

9 与其他平台优良的交互性 ASMX 基于属性的编程方式 Enterprise Services 对 WS-* 系列 规范的广泛支持 WSE 基于消息的传输方式 System.Messaging 可扩展性及对象地址无关性.NET Remoting WCF 整合了现有技术的优点 WindowsCommunicationFoundation

10 WCF 是微软建立下一代分布式应用及面向服务应用的标准平台 WCF 是对.NET Framework 2.0 (Visual Studio.NET 2005, 代码名 “Whidbey”) 的扩展 您可以使用 Visual Studio.NET 2005 及各种编程语言如 Visual Basic.NET, C#, Visual C++ with Managed Extension 来开发基于 WCF 的服务 WCF 可运行于 Windows XP, Windows Server 2003, Windows Vista 及以后 的版本上 与.NET Framework 及 Visual Studio.NET 2005 的无缝集成

11 WCF 是对.NET Framework 的扩展 WCF

12 20,379 行代码 安全 5,988 行代码 可靠的消息传送机制 25,507 行代码 事务 总代码行数: 56,296 4,442 行代码 其他基础设施 class HelloService { [WebMethod] public String Hello(String Greeting) { X509CertificateCollection collection = new X509CertificateCollection(); IntPtr blob = Marshal.AllocHGlobal(Marshal.SizeOf( typeof(CRYPTOAPI_BLOB))); IntPtr data = (IntPtr)((int)blob + Marshal.SizeOf(typeof(CRYPTOAPI_BLOB))); … SeqAckRange range = new SeqAcknRange(id, low, high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); … return Greeting; } 使用 Visual Studio.NET 2003 生产效率

13 10 行代码 安全 1,804 行代码 可靠的消息传送机制 25,507 行代码 事务 总代码行数: 27,321 class HelloService { [WebMethod] public String Hello(String Greeting) { foreach ( SecurityToken tok in requestContext.Security.Tokens { X509SecurityToken token = tok as X509SecToken } … SeqAckRange range = new SeqAcknRange(id,low,high ); SeqAckRange[] ranges = { range }; ReliableQueue.ProcessAcks( ranges ); … hr = pITxDispenser->BeginTransaction (NULL, ISOLATIONLEVEL_SERIALIZABLE, 0, pITxOptions, &pITransaction); … return Greeting; } 使用 Visual Studio.NET 2003 及 WSE 生产效率

14 1 行代码 安全 1 行代码 可靠的消息传送机制 1 行代码 事务 总代码行数: 3 使用 Visual Studio 2005 及 WCF [ServiceContract(SecureChannel, SecurityMode =“Windows")] [Reliability(Guarantees.ExactlyOnce | Guarantees.InOrder)] [ServiceContract] class HelloService { [ServiceOperation(TransactionFlowAllowed = true)] String Hello(String Greeting) { return Greeting; } 生产效率

15 可交互性

16 Activation and Hosting WASAvalon*.EXENT ServiceCOM+ Messaging HTTP Channel TCP Channel UDP Channel X-Proc Channel Queue Channel SOAP Security Channel SOAP Reliability Channel Text/XML Encoder Binary Encoder Service Runtime Contracts Throttling Behavior Transaction Behavior Activation Behavior Concurrency Behavior Cmd/Control Facilities Error Behavior Metadata Behavior Instance Behavior Inspection Facilities Data Contract Message Contract Service Contract Policy and Binding WCF 可交互性 网络 应用3 其他 协议栈 应用程序 应用2 BizTalk 适配器 应用1 WSE Assurances Messaging SOAP WS-Security MTOMWS-Addressing Metadata WS-Policy WSDL UDDI WS-Metadata Exchange XML Schema WS-Reliable Messaging WS-Coordination WS-Atomic Transaction WS-Business Activity WS-Trust WS-Secure Conversation Infrastructure and Profiles WS-ManagementWS-Federation Devices Profile Foundation SOAP / HTTPMIME XML Infoset XML 1.0 XML Namespaces WS-* 系列协议

17 WS-* 体系架构 基础设施 应用程序 传输层 Connected Applications Management Business Process … SecuritySecurityTrust Secure Conversation Messaging (SOAP, Addressing, MTOM, Eventing) XML (XML, XSD, XPath) Metadata (WSDL, Policy, Discovery, MEX) HTTPTCPSMTP … Reliability Reliable Messaging Transactions Atomic Transaction Coordination Business Activity

18 投资的保护 WCF 可以与现有分布式技术共 存于同样的系统上 WCF 可与基于现有技术开发的 分布式系统进行无缝的集成及 通讯 现有的代码可以平滑地升级至 WCF ASMX ASMX ASMXESWSE3

19 面向服务的开发

20 多态封装继承、子类化 通讯以消息为单位通讯方共享相同的契约通过策略进行绑定 1980s 2000s 调用通过接口实现动态的装载运行时的元数据用于描述类型 1990s 面向对象 面向服务 基于组件 从对象到服务

21 服务及其客户端同意它们之间的接口,但相互独立。它 们可以采用不同的语言编写,可以使用不同的运行时环 境(如 CLR 和 Java 虚拟机),可以运行在不同操作系 统上,还可以存在其他方面的不同。 服务具有自主性 与旧的分布式对象技术不同,服务仅通过定义的 XML 接口与其客户端进行交互。开发者只通过公共 接口来发布或调用服务,而对服务的内部实现不需 要任何知识,也不应有任何的假设。 共享契约,而不是类 在决定系统之间使用哪些选项时通过 WS-Policy 机制。 采用基于策略的兼容性 服务的边界是显式的 面向服务的四个要素 传统的分布式对象技术在简化编程模型的同时,也隐藏 了本地对象和远程对象不可避免的区别,从而导致一些 问题。在服务和客户端之间使用更明显的边界可以避免 这些问题。

22 应用程序 服务模型 消息通讯层 托管环境 ASP.NETASP.NET WPF (Avalon) WinFormWinForm NT 服务 COM+COM+ TCP通道TCP通道 HTTP通道HTTP通道 队列通道队列通道 安全 通道 安全 通道 可靠通道可靠通道 实例化 行为 流量控制 行为 类型整合行为类型整合行为 事务控制行为事务控制行为 并发控制行为并发控制行为 错误控制行为错误控制行为 元数据行为元数据行为 二进制编码器二进制编码器 Text/XML编码器Text/XML编码器 …… … … …… WCF 体系架构 WASWAS

23 服务模型层 影响并増强本地编程行为 消息通讯层 进行实际的消息传输, 并在此基础上加入各种 传输控制 服务代码 事务控制 行为 CLR 类型整合 行为 实例化 行为 安全 通道 TCP 通道 安全 通道 TCP 通道 事务控制 行为 CLR 类型整合 行为 可适配的体系架构

24 服务模型层消息通讯层 本地行为通道 事务 行为 CLR 类型整合 行为 实例化 行为 安全 通道 HTTP 通道 自定义 通道 可靠 通道 队列 通道 MSMQ 集成 通道 TCP 通道 命名管道 通道 流量控制 行为 错误处理 行为 并发控制 行为 元数据 行为 自定义 行为 HTTP 通道 TCP 通道 安全 通道 自定义 Channel 可靠 通道 CLR 类型整合 行为 实例化 行为 事务处理 行为 可适配的体系架构(续)

25 WCF Beta 1 WCF 正式发布 ! 2005年5月 2006 WCF Beta 2 2005年秋 WCF 发布日程

26 小结 Windows Communication Foundation: 整合了目前的分布式系统技术,形成了一个统 一、高效的服务开发平台 其于 WCF 开发出来的程序缺省就是面向服务的, 而且支持 WS-* 等开放协议,从而具有极强的可 交互性 Windows Communication Foundation : 将会作为 Windows Vista 及 Longhorn Server (代码名)的一部分发布 将会提供单独的下载,并可安装于 Windows XP 及 Windows Server 2003 之上

27 行动起来 开始评估 Visual Studio 2005 及 WCF WCF Beta 1 下载地址: http://www.microsoft.com/downloads/details.aspx ?FamilyId=CE888B4C-CCBD-452F-9D90- F4B7190CCA24&displaylang=en http://www.microsoft.com/downloads/details.aspx ?FamilyId=CE888B4C-CCBD-452F-9D90- F4B7190CCA24&displaylang=en http://www.microsoft.com/downloads/details.aspx ?FamilyId=CE888B4C-CCBD-452F-9D90- F4B7190CCA24&displaylang=en 为我们提供反馈,以便我们进一步完善 产品以满足您的需要

28 微软在中国的分布式系统研发 2005 年 3 月,微软 Windows 服务器产品部在微软 亚洲工程院(上海)设立研发部门 目前的 Windows 服务器产品部(中国)包括分布 式系统、高性能计算,及 System Management Server 的研发 我们目前从事研发的分布式系统新产品有 WCF, UDDI 等 与我们联系: 陈耀文 alchan@microsoft.com 陈耀文 alchan@microsoft.comalchan@microsoft.com 谢 晓 xiaoxie@microsoft.com 谢 晓 xiaoxie@microsoft.comxiaoxie@microsoft.com

29


Download ppt "下一代 Windows 通讯基础 Windows Communication Foundation ( 代码名 “Indigo”) 简介 谢 晓 软件设计工程师 陈耀文 部门经理 Windows 服务器产品部 微软亚洲工程院(上海)"

Similar presentations


Ads by Google