zoukankan      html  css  js  c++  java
  • WCF探索之旅(五)——WCF与WebService的异同

        前几篇文章我们简单的介绍了WCF以及怎样使用它,今天我们来讨论一下WCFWebService的异同。

        相信大多数同学跟我一样,对于WebService有所了解。并且应该说你是先听说WebService,后听说还有个WCF的。对不正确?那好,我们今天来一起看看。这两者有何不同。

     

        WebService是标准,是一种规范。严格来说WebService是一种行业标准,不是一种特定的技术。而WCF是一种WebService的实现。在WCF之前,微软系列中有ASP.NET Web Service,后来微软做了ASP.NETWeb Service的安全。性能,数据加密、解密,托管宿主等多方面的扩展。称为WSE系列。WSE3.0.后来就是WCF时代。

        WCF是一个分布式应用的开发框架。属于特定的技术,或者平台。既不是标准也不是规范。

    一定程度上WCF就是ASP.NET Web Service,由于它支持Web Service的行业标准和核心协议。因此ASP.NET WebService和WSE能做的事情,它差点儿都能胜任,跨平台和语言更不是问题,但它的目标不不过在支持和集成Web Service

        WCF是使用托管代码建立和执行面向服务(ServiceOriented)应用程序的统一框架。

    它使得开发人员可以建立一个跨平台的安全、可信赖、事务性的解决方式,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下全部的和分布式系统有关的技术,如EnterpriseSevices(COM+).Net Remoting、WebService(ASMX)、WSE3.0和MSMQ消息队列。以通信(Communiation)范围而论,它能够跨进程、跨机器、跨子网、企业网乃至于 Internet。以宿主程序而论,能够以ASP.NET,EXE,WPF,WindowsForms,NT Service,COM+作为宿主(Host)。

        WCF能够支持的协议包含TCP。HTTP,跨进程以及自己定义,安全模式则包含SAML,Kerberos,X509,用户/password,自己定义等多种标准与模式。也就是说,在WCF框架下,开发基于SOA的分布式系统变得easy了。微软将全部与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙

     

    关于WCF大家的一些错误的理解,以及从网上找了一些解释:

    1Web Service太旧了

    框架都版本号的差异。功能特性上却是有新旧之分,可是对于特定的系统。适合自己的就是最好的。

    2Web Service 就是 ASP.NET Web Service

    相同不是一个范畴。

    前者规范,后者是框架

    3WCF比Web Service性能好:不是一个范畴

    4WCF 比 ASP.NET Web Service快

    不一定,须要特定的限制条件,WCF使用BasicHttpBinding的时候与ASP.NET Web Service协议一样。

    5WCF比Web Service速度快:相同概念不严格。

    6WCF比Web Service强大

    WCF却是集成了多种微软的分布式技术,可是这里应该严格说是:ASP.NET Web Service

    7WCF比 Web Service安全:不严格。

    其次WCF也能够开发全然裸奔的应用程序。

    8Web Service必将被WCF代替

    Web Service不会被WCF代替!

    前者是一套广泛使用的规范。

    假设说WCF能代替的是ASP.NET WebService。由于二者都是.NET平台上的技术。

    9WCF事实上就是Web Service

    WCF在某些情况下不遵守 Web服务规范,也就是能够开发非服务性质的应用。并且不能简单等同。

    10WCF很easy。事实上没有什么

    WCF尽管是个服务开发框架,可是假设你深入学习。会发现WCF架构的强大之处。单单是WCF安全这一块已经相当的复杂了。

    况且还要统一编程模型,兼容和支持很多早期的分布式技术。


        好了,这里仅仅是抛砖引玉,详细有哪些不同。还须要大家亲自己主动手查一下。做做样例体验一下。





  • 相关阅读:
    HBase 超详细介绍
    写在之前
    【CF】38E Let's Go Rolling! (dp)
    [CF] E. Camels
    CF9D How many trees? (dp)
    [CF] 8C Looking for Order
    CF dp 题(1500-2000难度)
    NOIP原题板刷
    Codeforces Round #595 (Div. 3) 题解
    CSP-S2019 停课日记
  • 原文地址:https://www.cnblogs.com/yangykaifa/p/6889662.html
Copyright © 2011-2022 走看看