Web API与SOAP API的区别

总的来说,Web API比SOAP API有优势,多数情况下SOAP API的优势仅在消息结构的描述上。因此在三方集成时,当对方的集成工具仅支持根据WSDL来构建调用时,才建议考虑发布SOAP API。

1.请求消息格式不同

Web API的消息规格为URL请求;SOAP API的消息格式为SOAP规范。从消息封装、编码/解码上,Web API有明显的并发性能优势。

由于SOAP消息格式在发布时声明,可以方便一些高级工具调用方实现可视化的参数映射、配置化的调用。

例如,一个Web API请求消息

https://b2b.awspaas.com/openapi

?timestamp=1439277618461

&sig_method=HmacMD5

&cmd=app.install.check

&appId=com.actionsoft.apps.notification

&access_key=Salesforce#1

&format=json

&sig=DE90336BEDB0C3D3FE6DEE2FF0DF11AC

例如,一个SOAP API请求消息

xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"/>

com.actionsoft.apps.notification

2.响应消息格式不同

Web API可以返回JSON/XML结果,尤其是JSON数据格式是当今Web和移动端开发的首选规范;SOAP API返回一个XML的消息对象。从数据结果封装、编码/解码上,Web API有明显的并发性能优势,同时JSON结构有助于减少网络流量。

由于SOAP响应格式在发布时声明,可以方便一些高级工具调用方实现可视化的结果映射、配置化的调用。

例如,一个Web API响应消息

{

"data" : true,

"result" : "ok"

}

true

例如,一个SOAP API响应消息

xmlns:ns1="http://service.sdk.actionsoft.com/">

xmlns:ns2="http://service.sdk.actionsoft.com/">

true

3.安全机制不同

Web API可以基于HTTPS,而SOAP API可以基于WS-Security规范对消息加密时也可以使用HTTPS

Web API的认证基于访问凭证 ( access_key )和私钥 ( secret )的签名摘要验证,而SOAP API的认证基于WS-Security规范的用户名密码或者x509

4.客户端调用方式不同

SOAP API需要一个比较重的SOAP协议栈,会遇到跨语言、版本的SOAP互操作问题;Web API仅需要客户端支持HTTP(s)传输协议。

综上,Web API和SOAP API在请求、响应、安全和编程调用模式上有很大差异。AWS PaaS开发者可根据实际情况和上述差异,启用和配置合适的API协议。

5.并发处理能力的不同

测试环境

说明

AWS PaaS服务器

16核、16G内存、Centos 7.1 64 位、AWS PaaS(6.1.2.0830)

数据库服务器

16核、16G内存、Centos 7.1 64 位、 Oracle11.2g 64位

模拟客户机

2核、4G内存、Windows 7 32位、 LoadRunner 11

测试用例

方法

说明

demo.say

测试返回简单值

demo.calc

测试返回简单对象

测试用例可与我们技术支持联系,获得com.actionsoft.apps.poc.api应用

测试结果

Web API最大TPS(Trasaction per second事务数/秒)值为2137.529

SOAP API最大TPS(Trasaction per second事务数/秒)值为219.706

结论:Web API与SOAP API相比较,有明显的并发性能优势

oracle soap api,Web API与SOAP API的区别相关推荐

  1. 在ASP.NET Core Web API上使用Swagger提供API文档

    我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...

  2. 生成用于ASP.NET Web API的C#客户端API

    目录 介绍 主要特征 主要好处 背景 推定(Presumptions) 使用代码 步骤0:将NuGet软件包WebApiClientGen安装到Web MVC/API项目 步骤1:建立.NET Cli ...

  3. 保护REST API / Web服务的最佳实践[关闭]

    在设计REST API或服务时,是否存在处理安全性(身份验证,授权,身份管理)的最佳实践? 构建SOAP API时,您需要使用WS-Security作为指南,并且有很多关于该主题的文献. 我发现有关保 ...

  4. Web Service与Rest API

    标题正确甄别API & REST API & RESTful API & Web Service之间的差异与联系 看到API你会想起什么?是接口.第三方调用.还是API文档?初 ...

  5. 我所理解的RESTful Web API [Web标准篇]

    REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一 ...

  6. (四)Asp.net web api中的坑-【api的返回值】

    (四)Asp.net web api中的坑-[api的返回值] 原文:(四)Asp.net web api中的坑-[api的返回值] void无返回值 IHttpActionResult HttpRe ...

  7. Selenium Web 自动化 - Selenium常用API

    Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作   1.1 用webdriver打开一个浏览器   1.2 最大化浏览器&关闭浏 ...

  8. HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)...

    1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息. 但是coo ...

  9. SharePoint 2013 APP 开发示例 (六)服务端跨域访问 Web Service (REST API)

    上个示例(SharePoint 2013 APP 开发示例 (五)跨域访问 Web Service (REST API))是基于JavaScript,运行在web browser内去访问REST AP ...

最新文章

  1. html服务流程如何实现_朱传燕:美容院如何规范服务流程,提升专业口碑
  2. java自定义类加载器
  3. 双稳态电路的两个稳定状态是什么_从双稳态到双“更”稳态 ——叶芳伟课题组在拓扑光子学研究方向上取得新进展...
  4. .NET Remoting 经典远程回调模型(二)
  5. 计算机发展史说课ppt,创新杯 计算机类 说课ppt课件.ppt
  6. PAT乙级做题部分总结
  7. Feescale K64开发笔记1: 开发环境的建立
  8. 从 Semi-Norms(准范数) 到 Norms(范数)
  9. 导航卫星系统实时可视化平台开发
  10. 谷歌浏览器,查找CSS选择器
  11. VS2008运行过程中出现regsvr32问题解决方法记录
  12. 上海海洋大学计算机考研资料汇总
  13. 步进电机相关基础知识及常见问题(转载)
  14. 【Git】Git的使用与学习
  15. mysql求数值分位点_如何计算一组数据中任意一个数值的分位值?
  16. 蓝海卓越计费管理系统漏洞学习——download.php 任意文件读取漏洞
  17. msvcp140.dll是什么?怎么修复msvcp140.dll缺失的问题
  18. 抖音视频怎样放到项目中使用php,快手、抖音、微视类短视频SDK接入教程,7步就能搞定...
  19. 如何使用非递归的方式后序遍历二叉树
  20. 碰撞球小游戏开发总结

热门文章

  1. flutter 设置状态栏的颜色,背景appBar
  2. 前端:收集15个非常实用的JS代码,值得收藏
  3. zblog2.X程序卢松松模版独立留言本最新完美设置!
  4. 煽情的儿子450=随笔
  5. android Panel控件 抽屉控件
  6. iOS在APP中调用第三方地图地图(苹果,高德,百度,腾讯)
  7. 3D目标检测 | PointPillars论文和代码解析
  8. AutoCAD三维建模与AutoLISP地形展点检查隧道工程开挖效果
  9. Three Religions CodeForces - 1149B (字符串,dp)
  10. Android动态更换APP图标及名称