• SOA两个接口通常用于实现更:SOAP vs REST


        SOA协作架构异构系统,因此,一个跨操作系统的需求、跨语言的通用信息交换格公式。

    SOAP和REST它们是基于消息正文文本,在跨平台方面相比二进制消息优点。因此,作为选择SOA实施通常用于界面。但SOAP和REST的特点和用途。

        SOAP:将HTTP协议作为传输层协议,本质是採用HTTP进行传输,使用XML封装消息内容的RPC调用。

    REST:REST并非一种协议,仅仅是一种设计规范。该设计规范要求程序遵守HTTP协议最初设计的初衷。使用HTTP的GET/PUT/DELTET/POST对资源进行操作。REST接口是以URI资源为基础,对资源进行CRUD操作的接口。


    SOAP和REST的对照:

    • SOAP相对REST来说较为重量级。因为採用XML格式的消息体。消息的有效负荷占比較REST经常使用的JSON少,只是XML消息的优点是较JSON来说更easy为人阅读。
    • SOAP接口是自解释的,採用WSDL进行描写叙述,程序能够基于WSDL进行解释并自己主动生成SOAP调用代码;REST接口仅仅能通过接口文档进行描写叙述,难以做到程序解释接口定义。
    • SOAP採用HTTP作为传输层协议。对HTTP协议来说服务调用是透明的,防火墙上难以对SOAP进行细粒度的权限控制,也难以使用http的缓存机制提高效率。

      而REST是标准的HTTP訪问,能够充分利用HTTP协议提供的一些优点。比如能够在防火墙上较好地进行权限控制(最小粒度能够基于每一个URL的CRUD操作),也能够充分利用缓存提高响应速度和系统的吞吐效率。

    • 因为REST是标准的HTTP訪问。其适用性更广,web应用。移动应用都能够在不使用第三方库的情况下方便地使用REST接口构造应用程序。
    • 对于移动程序而言,因为REST的有效负荷占比高于SOAP的XML封装,採用REST接口能够减少程序使用的带宽。
    • 依据REST设计原则,接口是无状态的。因此能够简单地通过对server进行水平扩展提升服务能力。

    对于WEB Service而言,SOAP和REST各有千秋。SOAP有完好的标准规范和自己主动化开发工具,REST则更简单。对移动应用更友好。Oracle SOA Suite提供了将SOAP转换为REST接口的快捷方法,能够为已有的SOAP接口提供REST形式的封装,为web service同一时候提供SOAP和REST接口。是多方面的优势良好的解决方案组合。


    版权声明:本文博客原创文章。博客,未经同意,不得转载。

  • 相关阅读:
    [转发]深入浅出EventSourcing和CQRS
    [转载]缓存与数据库双写一致性问题
    关于com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“java.lang.RuntimeException: Could not generate DH keypair”
    [转载]安装sql2016时提示Polybase 要求安装Oracle JRE 7更新51 (64位)或更高版本”规则失败
    windows安装配置压缩版mysql
    virtualbox虚拟机centeros7系统桥接网卡网络配置
    oracle导入dmp文件(恢复数据)
    解决PL/SQL DEVELOPER12查询中文乱码问题(本地没装Oracle)
    JAVA线程Thread
    深入构造器
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4712950.html
Copyright © 2020-2023  润新知