写点什么

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

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

关注

评论

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

深度解读「无影云电脑远程办公解决方案」

阿里云弹性计算

远程办公 无影云电脑

IT运维工具难用吗?有没有简单易操作的?

行云管家

云计算 运维 IT运维

美国法院最新判决:未经 OSI 许可的开源是「假开源」!

腾源会

开源 腾源会

云效DevOps全家桶评测征集令重磅来袭!免费使用云效全套功能

阿里云云效

云计算 阿里云 DevOps 云原生

焕然一新的 Vue 3 中文文档来了

CRMEB

“后疫情时代”支付厂商发力B端已成共识,市场规模破3千亿!

易观分析

产业支付

presto是如何保证作业内存不会发生冲突和溢出

华为云开发者联盟

内存 presto 内存计算引擎 System Pool general Pool

大数据培训十大Hive调优技巧

@零度

大数据 hive调优

你了解部署流水线吗?

华为云开发者联盟

自动化 软件开发 devcloud 部署流水线 流水线

java培训Redis高频面试考点

@零度

Java redis

Apache SeaTunnel (Incubating) 2.1.0 发布,内核重构、全面支持 Flink

Apache SeaTunnel

大数据 大数据平台 apache 社区 Apache SeaTunnel #开源项目

中国版Postman:Apifox

Liam

程序员 Jmeter Postman API swagger

公有云RDS太贵?基于ECS构建的多云RDS服务可降低近半成本

沃趣科技

数据库 公有云 RDS 云数据库RDS for MySQL 云数据库Redis

玩转OpenMLDB社区,四张角色卡待解锁

第四范式开发者社区

人工智能 数据库 开源 贡献者 特征平台

APICloud App开发教程之云修复功能

YonBuilder低代码开发平台

APP开发 APICloud 热更新

ModStartCMS Laravel9 模块化建站系统 v3.5.0 多图字段支持,系统优化升级

ModStart开源

IOS技术分享| ARCallPlus 开源项目(一)

anyRTC开发者

ios 移动开发 语音通话 视频通话 呼叫邀请

FAQ(常见问题)页面的编写技巧

小炮

企业 常见问题 客户服务

设计一个 SaaS 系统需要考虑的4个关键点

Im胡子

系统架构 SaaS SaaS设计 SaaS系统架构

MongoDB与亚马逊云科技扩大全球合作

MongoDB中文社区

mongodb

架构实战营模块八消息队列mysql数据库设计

刘洋

架构实战营 #架构实战营 「架构实战营」

IT运维工具难用吗?有没有简单易操作的?

行云管家

运维 IT运维

DPU芯片头部企业云豹智能加入龙蜥社区,共同推动新一代数据中心基础设施蓬勃发展

OpenAnolis小助手

云计算 开源 芯片 龙蜥社区

春招进行时!当代大学生求职行为大赏

易观分析

求职 招聘 春招

Redis 缓存击穿(失效)、缓存穿透、缓存雪崩怎么解决?

码哥字节

Redis 核心技术与实战 Redis 热点key 缓存服务 3月月更

什么是目标关键词?

源字节1号

前端开发 后端开发 SEO优化 网站开发

建木小故事

Jianmu

开源 后端 持续集成 建木CI

Rust的Cow类型

Shine

rust cow

使用APICloud AVM多端框架开发仿微信通讯录功能

YonBuilder低代码开发平台

前端开发 APP开发 APICloud 多端开发 avm.js

前端培训之常见算法分享

@零度

前端算法

基于Laravel模块化极速开发框架 免费开源CMS

ModStart开源

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