oracle soap api,Web API与SOAP API的区别
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的区别相关推荐
- 在ASP.NET Core Web API上使用Swagger提供API文档
我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...
- 生成用于ASP.NET Web API的C#客户端API
目录 介绍 主要特征 主要好处 背景 推定(Presumptions) 使用代码 步骤0:将NuGet软件包WebApiClientGen安装到Web MVC/API项目 步骤1:建立.NET Cli ...
- 保护REST API / Web服务的最佳实践[关闭]
在设计REST API或服务时,是否存在处理安全性(身份验证,授权,身份管理)的最佳实践? 构建SOAP API时,您需要使用WS-Security作为指南,并且有很多关于该主题的文献. 我发现有关保 ...
- Web Service与Rest API
标题正确甄别API & REST API & RESTful API & Web Service之间的差异与联系 看到API你会想起什么?是接口.第三方调用.还是API文档?初 ...
- 我所理解的RESTful Web API [Web标准篇]
REST不是一个标准,而是一种软件应用架构风格.基于SOAP的Web服务采用RPC架构,如果说RPC是一种面向操作的架构风格,而REST则是一种面向资源的架构风格.REST是目前业界更为推崇的构建新一 ...
- (四)Asp.net web api中的坑-【api的返回值】
(四)Asp.net web api中的坑-[api的返回值] 原文:(四)Asp.net web api中的坑-[api的返回值] void无返回值 IHttpActionResult HttpRe ...
- Selenium Web 自动化 - Selenium常用API
Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作 1.1 用webdriver打开一个浏览器 1.2 最大化浏览器&关闭浏 ...
- HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)...
1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息. 但是coo ...
- SharePoint 2013 APP 开发示例 (六)服务端跨域访问 Web Service (REST API)
上个示例(SharePoint 2013 APP 开发示例 (五)跨域访问 Web Service (REST API))是基于JavaScript,运行在web browser内去访问REST AP ...
最新文章
- html服务流程如何实现_朱传燕:美容院如何规范服务流程,提升专业口碑
- java自定义类加载器
- 双稳态电路的两个稳定状态是什么_从双稳态到双“更”稳态 ——叶芳伟课题组在拓扑光子学研究方向上取得新进展...
- .NET Remoting 经典远程回调模型(二)
- 计算机发展史说课ppt,创新杯 计算机类 说课ppt课件.ppt
- PAT乙级做题部分总结
- Feescale K64开发笔记1: 开发环境的建立
- 从 Semi-Norms(准范数) 到 Norms(范数)
- 导航卫星系统实时可视化平台开发
- 谷歌浏览器,查找CSS选择器
- VS2008运行过程中出现regsvr32问题解决方法记录
- 上海海洋大学计算机考研资料汇总
- 步进电机相关基础知识及常见问题(转载)
- 【Git】Git的使用与学习
- mysql求数值分位点_如何计算一组数据中任意一个数值的分位值?
- 蓝海卓越计费管理系统漏洞学习——download.php 任意文件读取漏洞
- msvcp140.dll是什么?怎么修复msvcp140.dll缺失的问题
- 抖音视频怎样放到项目中使用php,快手、抖音、微视类短视频SDK接入教程,7步就能搞定...
- 如何使用非递归的方式后序遍历二叉树
- 碰撞球小游戏开发总结
热门文章
- flutter 设置状态栏的颜色,背景appBar
- 前端:收集15个非常实用的JS代码,值得收藏
- zblog2.X程序卢松松模版独立留言本最新完美设置!
- 煽情的儿子450=随笔
- android Panel控件 抽屉控件
- iOS在APP中调用第三方地图地图(苹果,高德,百度,腾讯)
- 3D目标检测 | PointPillars论文和代码解析
- AutoCAD三维建模与AutoLISP地形展点检查隧道工程开挖效果
- Three Religions CodeForces - 1149B (字符串,dp)
- Android动态更换APP图标及名称