前言

时间的朋友》里面几句特别有预见性的话来说明当今儿世界互联网发展趋势:

市场上有一种叫做“父爱算法”的需求。将会诞生很多伟大的公司。背后的精神就是六个字:你不用懂,听我的。真正的机会不在于付费还是免费,而在于你是不是在提供服务。

时间的朋友》

内容

再次拿起WCF,再次颠覆了以前对WCF的认识。由于在去年图书馆项目中是第一次接触WCF技术,第一次接触的时候,有一个服务的和一个客户端,然后自己因为要调试,所以懒得很,就把服务的和客户端放到一个解决方案下面了,那会师父告诉我,这样怎么能体现WCF的优势啊。自己当时没有明白,只知道这样调试方便。现在想想,WCF带着它特有的分布式服务,体现着各种特色优势。

WCF((Windows Communication Foundation),是一项基于DOTNET开发的一种分布式服务。认识WCF的时候,也就意味着你的思想要从面向对象马上步入到面向服务了。说起WCF一定会想起webService,这里就简单的说一下他们一些区别吧!其实我也没有切身体会过这两个技术的独特点,但是通俗的说:webservice包含了wcf,但是webservice拥有自己本身的一些特性,比如消息队列的应用。

这个技术的应用点,个人感觉就是把一个功能复用了,提高了代码的质量,高内聚,解耦合。举个例子:比如腾讯公司提供的qq软件想开发一个天气预报功能,华为就说了,我也想开发一个整个类似的功能,这个时候,新浪的CEO坐不住了,你们添加新功能,我也要添加新功能,于是乎,气象局说,你们都别开发了,别乱了我的生意,我来开发,给你们提供对外服务,你们免费用我的产品,但是你们得宣传我的产品。把功能模块一样的功能,抽象成服务,然后对外提供服务接口,供其他人调用。

我把WCF分为了三个部分:契约、终结点、宿主

契约:分为服务契约、数据契约、消息契约、操作契约等,这些东西原理是基本相似的,相当于双方或者多方的约定。达到你要什么,我给你提供什么,你想多要点儿,没门儿。

终结点:由地址、绑定、契约组成。但是我为什么把契约和终结点分开了,我认为终结点仅仅是一个url,就是带着信息,按着地址找人。

宿主:这个非常重要的,我个人感觉特别重要,因为这个需要我们根据开发项目的大小,项目开发的阶段,选择合适的宿主来更好的应用我们的服务开发。

下面几篇博客,将分别从上面这三个方面介绍WCF。欢迎大家来访~

感谢您的宝贵时间···

WCF进阶(一)——概述的更多相关文章

  1. WCF进阶:扩展bindingElementExtensions支持对称加密传输

      前面两篇文章WCF进阶:将编码后的字节流压缩传输和WCF 进阶: 对称加密传输都是实现了自定义编码,那两个例子中托管服务或者客户端调用都采用的代码实现,WCF更友好的方式是在app.config或 ...

  2. WCF进阶(二)——Contract

    前言 我和用户有个约定,这个契约上篇已经说过了,分为服务契约.操作契约.消息契约.数据契约等,说白了,你到底让我看到什么,你告诉我,或者说,我可以让你看到什么,你敢用吗?下面就说一些基础的,关于这个些 ...

  3. WCF初探-19:WCF消息协定

    WCF消息协定概述 在生成 WCF应用程序时,开发人员通常会密切关注数据结构和序列化问题,而不必关心携带数据的消息结构. 对于这些应用程序,为参数或返回值创建数据协定的过程很简单.但是,有时完全控制 ...

  4. WCF初探-20:WCF错误协定

    WCF错误协定概述 在所有托管应用程序中,处理错误由 Exception 对象表示. 在基于 SOAP 的应用程序(如 WCF 应用程序)中,服务方法使用 SOAP 错误消息来传递处理错误信息. SO ...

  5. [WCF]设置拦截器捕捉到request和reply消息

    WCF进阶学习ing... 在熟练掌握了ABC的使用以后,就开始想着去了解WCF是怎么通信的了.首先是服务描述语言wsdl,它定义了服务的描述等等,用于让外界知道这个服务的ABC是什么.另外一个比较重 ...

  6. WCF 数据服务 4.5

    .NET Framework 4.5 其他版本 WCF 数据服务(以前称为"ADO.NET Data Services")是 .NET Framework 的一个组件.可以使用此组 ...

  7. WCF 消息压缩性能问题及解决方法

    最近使用WCF作为通迅框架开发一套信息系统,系统使用传统C/S框架,系统有可能会部署在互联网上,因此决定对传输的数据进行GZIP压缩,原来在使用.NET Remoting时,可以使用插入自定义的Cha ...

  8. 基于WCF的RESTFul WebAPI如何对传输内容实现压缩

    前言 WCF作为通迅框架可以很容易地实现对消息的压缩,且方法不止一种,主要解决方法主要有以下四种: 1.通过自定义MessageEncoder和MessageEncodingBindingElemen ...

  9. WCF不用证书实现验证(messageheader)

    上文WCF进阶:将消息正文Base64编码中介绍了实现自定义MessageInspector来记录消息和实现自定义Formatter来改写消息,本文介绍一下在WCF中使用SoapHeader进行验证的 ...

随机推荐

  1. ServiceWorker入门介绍一

    Service Worker只有安装后才会存在.而且因为他的逻辑是由开发者编写的 JavaScript 而不是浏览器控制的. Service Worker 拥有和缓存相关的 API ,这让他可以储存资 ...

  2. Java开发需要注意的流程

    将一些需要变动的配置写在属性文件中 比如,没有把一些需要并发执行时使用的线程数设置成可在属性文件中配置.那么你的程序无论在DEV环境中,还是TEST环境中,都可以顺畅无阻地运行,但是一旦部署在PROD ...

  3. oracle 查询中实现分页

    那么Oracle如何实现分页呢?--Oracle分页查询SELECT   * FROM   (     SELECT         ROWNUM R,YANGCQ_ID,YANGCQ_BRANCHI ...

  4. 科学计算工具Numpy简介

    Numpy(Numerical Python) Numpy:提供了一个在Python中做科学计算的基础库,重在数值计算,主要用于多维数组(矩阵)处理的库.用来存储和处理大型矩阵,比Python自身的嵌 ...

  5. 在Centos7中安装elasticsearch5.5

    在Centos7中安装elasticsearch5.5 第一步:必须要有jre支持 elasticsearch是用Java实现的,跑elasticsearch必须要有jre支持,所以必须先安装jre ...

  6. leetcode867

    vector<vector<int>> transpose(vector<vector<int>>& A) { vector<vector ...

  7. Java微信公众平台开发(三)--接收消息的分类及实体的创建

    转自:http://www.cuiyongzhi.com/post/41.html 前面一篇有说道应用服务器和腾讯服务器是通过消息进行通讯的,并简单介绍了微信端post的消息类型,这里我们将建立消息实 ...

  8. ubuntu下编译ffmpeg并用eclipse调试

    一.下载ffnpeg源码 下载地址:http://ffmpeg.org/download.html 二.解决版本问题 可能之前你编译过ffmpeg,或者装过相关的库,那都要先卸载掉,否则用的时候会报一 ...

  9. consul watch

    consul watch -type key -key mhc ./key_handler.py [root@mhc consul]# cat key_handler.py #!/usr/bin/py ...

  10. javascript实现新浪微博MID与地址转换

    新浪微博每一条微博都会有一个mid,然后每条微博都有一个独立的地址,例如:http://www.weibo.com//Bw3SXzWzP 规律:地址中的黄色部分是用户id,绿色部分是微博的识别字符串, ...