WCF Services
WCF services are the new distributed boundary in an enterprise application—with an emphasis on SOA.
In the past,you had to deliberate between Enterprise Services,.NET Remoting,or ASMX to distribute and reuse functionality,
WCF provides you with a single programming model to satisfy the needs of any equivalent distribution scenario.
With WCF,you can cross process,machine,and corporate boundaries over any number of protocols; you can expose interoperable web services; and you can support queued messaging scenarios.
I’ll take you through a few examples where WCF is deployed in lieu of earlier technologies.

Figure 1-11 illustrates an intranet scenario where a WCF service is invoked within an application domain over TCP protocol.
In this scenario,the client needed to reach remote services and authenticate with Windows credentials,and didn’t require interoperability.
As such,the service is accessible over TCP using binary serialization for better performance,and supports traditional Windows authentication using NTLM or Kerberos.
NTLM是NT LAN Manager的缩写,这也说明了协议的来源。NTLM 是 Windows NT 早期版本的标准安全协议
In the past,this may have been achieved using Enterprise Services (or possibly .NET Remoting although security features are not built-in).

Figure 1-11 Deploying WCF services on the intranet

Figure 1-12 illustrates an Internet scenario where multiple web services are exposed—one supporting legacy protocols (Basic Profile),another supporting more recent protocols (WS*).
With WCF,a single service can be defined and exposed over multiple endpoints to support this scenario.

Figure 1-12 WCF services exposed on the intranet

In Figure 1-13 you can see WCF implemented at several tiers—behind the firewall to support an ASP.NET application,and outside the firewall for smart client applications.
Again,the same service can be exposed over multiple protocols without duplicating effort or switching technologies.

Figure 1-13. WCF services deployed at several tiers over multiple protocols

Throughout this book,I’ll be exploring these and other scenarios while discussing specific features of the WCF platform.

Learing WCF Chapter1 WCF Services的更多相关文章

  1. Learning WCF Chapter1 Generating a Service and Client Proxy

    In the previous lab,you created a service and client from scratch without leveraging the tools avail ...

  2. 跟我一起学WCF(13)——WCF系列总结

    引言 WCF是微软为了实现SOA的框架,它是对微乳之前多种分布式技术的继承和扩展,这些技术包括Enterprise Service..NET Remoting.XML Web Service.MSMQ ...

  3. Learing WCF Chapter1 Fundamental WCF Concepts

    At its core,WCF is a development platform for service-oriented applications. As I mentioned earlier, ...

  4. Learning WCF Chapter1 Hosting a Service in IIS

    How messages reach a service endpoint is a matter of protocols and hosting. IIS can host services ov ...

  5. Learning WCF Chapter1 Creating a New Service from Scratch

    You’re about to be introduced to the WCF service. This lab isn’t your typical “Hello World”—it’s “He ...

  6. Learning WCF Chapter1 Exposing Multiple Service Endpoints

    So far in this chapter,I have shown you different ways to create services,how to expose a service en ...

  7. Learning WCF Chapter1 Summary

    SummaryThis chapter covered a lot of ground,beginning with a look at the purpose of WCF,the problems ...

  8. 重温WCF之WCF中可靠性会话(十四)

    1.WCF中可靠性会话在绑定层保证消息只会被传输一次,并且保证消息之间的顺序.当使用TCP(Transmission Control Protocol,传输控制协议)通信时,协议本身保证了可靠性.然而 ...

  9. 构建一个简单的WCF应用——WCF学习笔记(1)

    通过<WCF全面解析>来知识分享....感谢蒋金楠老师@Artech 一.VS中构建解决方案   Client一个控制台程序模拟的客户端,引用Service.ServiceModel.dl ...

随机推荐

  1. win 10应用商店下载应用错误码0x80070422

    Win10应用商店下载应用提示错误0x80070422怎么办? 一些安装了Win10系统的朋友们在使用过程中发现,在使用WIn8应用商店下载免费应用的时候,系统提示:错误0x80070422,这是怎么 ...

  2. 本机Font字体

    void getFontList() { GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); Str ...

  3. C# 日期转换函数

    string.Format("{0:d}",dt);//2005-11-5 string.Format("{0:D}",dt);//2005年11月5日 str ...

  4. php导出execl

    <?php function export_excel($items,$fields,$fields_array,$name) { /* * 调用方法示例 * $items = $this-&g ...

  5. 尚学堂马士兵Oracle教程笔记

    检查Oracle安装 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba 然后,解除对scott用户的锁 alter user scott account ...

  6. 05_天气查询_JAX-WS方式_客户端

    [客户端特点] 支持面向对象开发. 客户端功能调用webService,首先得知道WebService的地址. 一般情况下,只要知道了wsdl的地址,就可以知道WebService的地址. 我们上一篇 ...

  7. 增加Swap内存

    增加512M Swap内存 #首先先建立一个分区,采用dd命令如下:dd if=/dev/zero of=/home/swap bs=1024 count=524288#(1个block为1K,512 ...

  8. 初学c++

    今天在计蒜客中学习了c++的语句编写方法.因为之前编程时候用的都是c,所以第一次看到c++的部分代码还是有点迷茫忙的. 初次接触c++,我学习到了c++中变量的定义以及输入输出. 代码如下: #inc ...

  9. ASP.NET中的验证控件

    ASP.NET提供了如下的控件: RequiredFieldValidator: 字段必填 (ControlTovalidate设定要验证的控件) RangeValidator: 值在给定的最大值,最 ...

  10. 2015-01-27-从实验出发理解buffer与cache区别-吴伟顺

        通过du(find) 与 cat 体现buffer与cache差异实验: 实验表明: 1 通常 buffer << cache 2 "文件系统"相关内容(ino ...