写点什么

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:311884
用户头像

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

关注

评论

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

我在阿里实习做开源

阿里巴巴云原生

阿里巴巴 云原生 dubbo 个人提升 中间件

行业资讯 | Android WebView 致安卓应用闪退,mPaaS 助你规避这波 Bug

蚂蚁集团移动开发平台 mPaaS

android webview mPaaS 离线包 UC内核

报名倒计时 | 有道技术沙龙,聊聊明星语音背后的故事

有道技术团队

活动

Docker 教程(1)---Docker简介与安装

AlbertYang

Docker

大咖云集!阿里达摩院领航大数据 + AI向量检索专场Meetup回顾(内含讲师PPT领取)

Proxima 技术社区

人工智能 大数据 阿里巴巴 搜索 向量检索

定义结构体访问结构成员的三种方法

Emotion

从无到有实现音视频通讯

anyRTC开发者

ios android 音视频 WebRTC RTC

C 语言性能优化:循环条件i<=n与i!=0的性能差异

1

活动 | Apache Pulsar Meetup 欢迎报名

有道技术团队

活动

百度直播消息服务架构实践

百度Geek说

手机 直播 移动端

搭建博客可能会用到的 Git 命令|学习笔记

彭宏豪95

学习 极客时间 笔记

阿里P9在Github上分享的Java面试突击手册,凭借它,我拿下了阿里P7的offer!

Java架构之路

Java 程序员 架构 面试 编程语言

APICloud多端开发 | 在线教育App模板源码讲解

YonBuilder低代码开发平台

软件开发 在线教育 移动开发 APP开发 APICloud

Hystrix 实战经验分享

vivo互联网技术

Java 服务器 熔断 Hystrix

「 视频云大赛 — 大咖驾到 」驱动下一代技术浪潮,我们更专注价值落地

阿里云CloudImagine

阿里云 音视频 视频处理

Go Storage存储包封装

非晓为骁

storage Go 语言

面试字节跳动定级2-2,拿32*16offer,P8大佬的面试教程给了我春天!

Java架构之路

Java 程序员 架构 面试 编程语言

什么样的技术能进入一线大厂?这份阿里、百度、腾讯等 20家Java岗招聘要求梳理报告,会给你答案;

Java架构之路

Java 程序员 架构 面试 编程语言

NodeJS基础入门教程(1)-一文让你快速了解什么是NodeJS

AlbertYang

nodejs

全文检索工具包Lucene入门教程

AlbertYang

lucene

实习就参与“服务过亿用户的项目”,是什么体验?

阿里巴巴云原生

开发者 云原生 调度 应用服务中间件 Go 语言

Go Mysql Driver 集成 Seata-Golang 解决分布式事务问题

阿里巴巴云原生

Java 微服务 云原生 seata Go 语言

有道技术岗大揭秘!这么幸福的生活,真的是熬夜掉发Top1的职业吗?

有道技术团队

招聘

一周信创舆情观察(3.15~3.21)

统小信uos

Flink 执行引擎:流批一体的融合之路

Apache Flink

flink

Flink VS Spark

五分钟学大数据

flink spark 3月日更

字节金三银四Java面试题库被泄露,GitHub连夜被下架

Java架构师迁哥

UDTS上线数据集成服务,汇聚多源数据帮助企业高效分析决策

UCloud技术

数据传输 数据集成

zookeeper的watch机制

大数据技术指南

大数据 zookeeper 3月日更

身份认证之多因素身份认证(MFA)

龙归科技

第三方登录 统一身份认证

vue+typescript实现组件封装之button篇

小小

typescript Vue

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