【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

REST 与 WS-* 战争结束!

  • 2007-07-05
  • 本文字数:847 字

    阅读完需:约 3 分钟

David Chappell 他的博客里作出了一个在过去近一年时间里为人们所悄悄接受的结论:

如果你有留意,并且如果你不是一个无可救药的死硬派,我要告诉你 REST 和 WS-* 之间的战争已经结束了。这场战争如朝鲜战争一样以停战协定终结,而不是像第二次世界大战那样由一方取得压倒性的胜利。现在看来已经很清楚,两种技术都有其价值,都将会继续被使用下去。

不管这场争论是关于 REST 对 WS-* ,还是关于 REST 对 SOA ,这种面对现实的态度(或者说骑墙的态度已经存在一段时间了。正如 David 所指出:

[……] 看看微软在下一版的 Windows Communication Foundation(WCF)中即将推出的对创建RESTful 应用程序的支持。Java 的官方组织也上了这条船,他们的 JAX-RS 也即将面世。

微软们已经说了 REST 和 WS-* 很多年好话,所以这些也不是什么令人惊奇的举动。只有很少人仍然相信 Web 服务是万灵药。也同样只有很少人仍然相信 REST 是万灵药。那我们不禁要问:“什么时候该用 REST,什么时候又该用 WS-*?”David 的意见是:

对于关注 CRUD 场景的面向数据的应用来说,RESTful 的方式是很自然的事。有很多很多程序都适用这种模型,特别是互联网上的公共应用程序。对于面向服务 / 面向方法的应用,比如需要事务、严密的安全性等等这些更高级的操作的应用来说,采用基于 WS-* 的方案显得更有道理。

不过 Mark Baker 不同意:

我完全同意他说 REST 很适合面向数据的应用,但我不同意他说 REST 只适合符合 CRUD 模型的应用。这是因为 CRUD 没有 HTTP POST 的等价物。一旦你把 POST 考虑在内,你就可以做到所有的事情,比如,网上订货。

Mark 很乐意请教别人对这个问题的见解,他说:

可能 David,或者其他人,可以给我举个例子,给我举出一个不(太)适合这个模型(不必是完整的 REST,只要举出统一接口的部分就好)的面向数据的应用的例子。

那么,当 David 在他的文章最后写下:

很高兴看到狂热在消退,而理性赢得了胜利。战争真的结束了。

他说得对吗?还是这只是暂时的平静,将军们正在策划新的战略?

查看英文原文: The REST versus WS-* war is over!

2007-07-05 01:301239
用户头像

发布了 225 篇内容, 共 60.8 次阅读, 收获喜欢 50 次。

关注

评论

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

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

BlockChain先知

模块七作业 - 王者荣耀商城异地多活架构设计

🐢先生

架构实战营

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

鳄鱼视界

C语言编程-typedef

二哈侠

浅析 Redis 数据结构 List 及其底层编码方式

Java你猿哥

Java redis List ssm

kafka消费者那些事儿

做梦都在改BUG

Java kafka 消费者

Github百万收藏!这部《从零开始写分布式服务框架》称霸榜首!

Java你猿哥

Java 架构 分布式 ssm 分布式框架

网络安全面试题大全(整理版)500+面试题附答案详解,最全面详细,看完稳了

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

授权码 + PKCE 模式|OIDC & OAuth2.0 认证协议最佳实践系列【03】

Authing

OIDC PKCE

从0到1:活动报名小程序开发笔记

CC同学

2023年互联网Java工程师高级面试八股文汇总(1260道题目附解析)

Java你猿哥

Java MySQL zookeeper JVM java面试

如何使用ChatGPT自带插件

楚少AI

ChatGPT ChatGPT4 chatgpt插件

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

大瞿科技

MongoDB源码学习:原子操作WriteUnitOfWork

云里有只猫

mongodb 源码刨析

【1对1咨询】前端和后端,哪个更简单?转行程序员的捷径

程序员晚枫

前端 后端 转行

流批一体数据交换 etl-engine 融合查询语法

weigeonlyyou

数据迁移 ETL 云数据迁移 Kafka ETL 流批一体化

开源字节 考研集训营小程序

源字节1号

开源 软件开发 前端开发 后端开发 小程序开发

绝了!阿里大佬的"Redis深度核心笔记",从基础到源码,全是精华

做梦都在改BUG

Java 数据库 redis 缓存

熬了一个月肝完这份阿里架构师的Java面试手册,我从20K变成了30K

做梦都在改BUG

Java java面试 Java八股文 Java面试题 Java面试八股文

Nautilus Chain:独特且纯粹的创新型 Layer3

股市老人

Github标星78k,Alibaba最新发布的Spring Boot项目实战文档!太强了

Java你猿哥

Java spring Spring Boot mybatis ssm

面试官问:kafka为什么如此之快?

做梦都在改BUG

Java kafka 面试

来聊聊才离职就被拉黑禁用的这些事

HoneyMoose

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

EOSdreamer111

阿里大佬带你一周刷完Java面试八股文,比刷视频效果好多了!

Java你猿哥

Java 分布式 微服务 JVM ssm

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

威廉META

Windows 高效应用快捷键

Andy

Nautilus Chain:独特且纯粹的创新型 Layer3

EOSdreamer111

Nautilus Chain上首个DEX PoseiSwap即将开启IDO,潜力几何?

股市老人

干货 | IDaaS 身份即服务背后的基石

Authing

数字化转型应该如何去做?(4A架构篇)

数字随行

数字化转型

REST与WS-*战争结束!_SOA_Mark Little_InfoQ精选文章