10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

REST 在 IT/Cloud 管理中的角色——API 的对比

  • 2009-07-27
  • 本文字数:1139 字

    阅读完需:约 4 分钟

最近的一篇文章中,William Vambenepe 比较了四种公开云计算 API(AWS EC2,GoGrid,Rackspace 以及 Sun Cloud) 以得出 REST 在 IT/Cloud 管理中的实用价值。

有趣的是,作为曾经参与创建 WS-* 协议栈的一员,William 对 REST 原则并没有感到什么不自在。

……[REST] 往往被定义成 WS-* 的对立面。另一方面,作为一个从 CGI Perl 脚本时期就开始写 Web 应用的人,一个 on-the-wire 协议的爱好者 […],一个乐于处理原始 XML 的人 […],一个欣赏语义网的人,一个将模型比协议看得更重的人,REST 的原则对我而言是非常自然的。

从自己 IT 资源管理的背景出发,William 在这一领域检验了 RESTful 的原则以及不同的 IT/Cloud 管理供应商是如何在他们的 API 设计中利用这些原则的。

过了一阵子之后,现在我开始怀疑我是否错过了 REST 的某些重要部分,以及其对于 IT 管理的应用,或者它是否只是“选择一个协议然后关注于模型”(与此同时仅仅避免其它替代方法的各种不足之处,这是一个正当的理由但不是 REST 其内在的好处)。

他从 Amazon EC2 的一点历史开始展开……

几年前 Amazon EC2 API 刚发布的时候,与同样使用 SOAP 和普通 HTTP 的替代者相比,它并没有什么能够打动我的地方,不过是选择一个协议并且保持一致罢了。他们让你选择普通 HTTP 还是 SOAP,但这不过是改变消息被序列化的方式(输入中是使用 URL 参数,还是 SOAP;输出中是否有 SOAP 包装器)。

[…]

时间很快到了 2009 年,许多人都已经开始创建和发布用于云计算的 Restful API。API 的背后都有着实际的实现,并且都明确声明是 Restful 的(不像 Amazon)。此外,它们的作者在数据中心自动化与 / 或 REST 设计方面都有优秀的资历。首先出现的是 GoGrid,接着是 Sun Cloud API 以及最近发布的 Rackspace。所以我们现在有了具体的规范来分析和理解 REST 对于资源管理来说意味着什么。

…接下来讨论了 GoGrid API Rackspace “Cloud Servers” API ,以及 Sun Cloud API 的细节。他总结到,尽管没有对这些不同的 Cloud 供应商深入到详细的特性对比,但它们的产品是非常相似的。

总的来说,它们在很多方面都具有相似性。它们让你进行相同的操作(基于映像创建服务器实例,撤消实例,为它们分配 IP…)。有些特性不同:GoGrid 更好地支持了负载平衡,Rackspace 让你控制备份计划,Sun 给予你集群支持(一种达到“群组管理”的方式,这在 EC2 API 中是内置的),等等。

他的结论是 Sun 和 Rackspaces 的 API 更为 RESTFul,相应地他也会更愿意使用它们来编程。全文可以在他的博客上找到。你对于使用这些Cloud 供应商的API 开发有着怎样的经验呢?特别是使用微软的Windows Azure ,它明显在William 的分析中被忽略了。

查看英文原文: Role Of REST In IT And Cloud Management - A Comparison Of Cloud API’s

2009-07-27 22:312221
用户头像

发布了 133 篇内容, 共 42.8 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

LeetCode题解:136. 只出现一次的数字,排序后搜索,JavaScript,详细注释

Lee Chen

LeetCode

知识拷问:工作站和服务器哪个更适合做CST电磁仿真?

思茂信息

仿真软件 cst cst使用教程 cst电磁仿真 cst仿真软件

常用的表格检测识别方法-表格区域检测方法(上)

合合技术团队

人工智能 深度学习 文字识别 表格识别 表格检测

厚积薄发|迭代为什么叫冲刺?

CODING DevOps

DevOps 敏捷 软件工程

融云跨平台 SDK 自动生成技术的探索和实践

融云 RongCloud

sdk 融云 办公效率 通讯 图片资源

顶象App加固保障互联网+医疗安全与合规

极客天地

开源7天Github斩获4.5万Stars!阿里2023版高并发设计实录鲨疯了

Java 架构 微服务 系统设计 高并发

数字城市发展下的技术趋势,你了解多少?

没有用户名丶

SaaS 产品如何选择设计协作工具?

CODING DevOps

敏捷 设计 SaaS CoDesign 团队协作工具

ChatGPT系统开发AI人功智能方案

Congge420

AI Gallery ChatGPT 人工智能ChatGPT 吗?

教你使用Feign替换RestTemplate

行业分析| 快对讲-融合会议的应用

anyRTC开发者

音视频 视频会议 快对讲 融合会议 电话会议

【源码分析】【netty】FastThreadLocal为什么快?

如果晴天

源码分析 Netty 多线程 并发 netty

在研制带处理器的电子产品时,如何提高抗干扰能力和电磁兼容性?

华秋PCB

电磁 电路 处理器 控制器 抗干扰

如何用一行代码实现监测 OpenAI,大幅提升使用体验

Yestodorrow

可观测性 用户体验 应用性能 ChatGPT

软件测试/测试开发丨Python学习笔记之基本数据类型与操作

测试人

Python 软件测试 测试开发 数据类型

IPP Swap孵化器/LP挖矿系统开发方案

Congge420

区块链 ipfs挖矿用什么app

LP流动性挖矿/算力系统开发源码搭建

Congge420

区块链 系统开发 云算力挖矿系统开发详解 云算力模式系统开发源码

Makefile常用命令详解

小万哥

c++ 程序员 面试 后端 makefile

车载手势识别技术:未来交通的革命性解决方案

数据堂

架构实战-毕业设计

程序员小张

「架构实战营」

一文掌握 Go 并发模式 Context 上下文

陈明勇

Go golang 后端 Context 上下文

火山引擎DataLeap:3步打造“指标管理”体系,幸福里数据中心是这么做的

字节跳动数据平台

大数据 字节跳动 数据管理 指标管理 数据研发

火山引擎DataTester分享:A/B实验中常见的8个错误

字节跳动数据平台

吉林省网络安全等级测评机构有哪些?在哪里?

行云管家

网络安全 等级保护 吉林

NFT元宇宙链游系统开发逻辑分析

Congge420

区块链 NFT链游 元宇宙链游

Python从0到1丨图像增强的顶帽运算和底帽运算

华为云开发者联盟

Python 人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

城市开发者平台:程序员成长和创新的“家园”

华为云开发者联盟

云计算 华为云 华为云开发者联盟 企业号 5 月 PK 榜

AE插件 真实地图路径绘制GEOlayers 3 Mac v1.5.7

真大的脸盆

Mac Mac 软件 AE插件 地图路径插件

DevOps 的道术法器,探寻 DevOps “立体化”实践之旅

CODING DevOps

DevOps 软件工程 CODING DevOps

部分等保政策相关专业术语英文翻译汇总

行云管家

等保 等级保护 等保2.0

REST在IT/Cloud管理中的角色——API的对比_SOA_Dilip Krishnan_InfoQ精选文章