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

纯 GET 的 REST 集成模式——是同步,还是集成?

  • 2009-10-30
  • 本文字数:954 字

    阅读完需:约 3 分钟

Duncan Cragg 阐释了他关于纯粹基于 GET 的 REST 集成模式的想法,其内容与微软 FeedSync 规范的愿景极为相似。他通过与一名企业架构师的假想对话这一方式,来解释了这一模式。

这位担忧的企业架构师注意到面向服务的环境中充满这样的 REST 实践:Web 站点有“REST API”,或者有着小’s’的“Web 服务”。就算 AtomPub 也有“服务文档”!一些模式,比如 AtomPub,通过完整的 HTTP 方法集,仅提供简单的数据读 / 写服务。而另一些模式仅把这种读 / 写接口作为对更多复杂的服务功能的封装。

他不禁想到:“Web 在 REST 集成中处于什么位置?没有 PUT 和 DELETE,Web 也工作得很好:那么就使用本身 RESTful 的 GET 不就够了吗?”

他将自己的基于 GET 的集成模式称作 FOREST,一个 RESTful 的观察者同步模式,像他所解释的那样:

FOREST 是一个只有 GET 的 REST 集成模式,简单的定义为:一个资源的状态依赖于它所链接的其它资源的状态。[…] 这意味着,为了查看这些依赖,资源服务器同时也必须是客户端。

接下来他给出了一些关于这一集成场景的例子,还包括混搭…

FOREST 是由纯 GET 或 Web 轮询用例引申而来的 REST 模式,包括某些特定类型的混搭,比如 feed 聚合或筛选器,为其它网页创建摘要的站点,等等。

…以及它与企业的相关性。

FOREST 是在 ROA/WOA/SOA 环境里构建“企业混搭”的一个 REST 模式。[…] 据我所知与此最相近的是企业混搭标记语言,但 FOREST 却十分不同:它简单得多,并且是 / 纯粹 / 的 REST 模式。

就这点而言,实际上 ATOM/RSS feed 使用基于 GET 的同步已有一段时间了, FeedSync 就是这样的形式之一,这是微软的一个 feed 同步规范。

FeedSync 对于 Atom 和 RSS 的应用范围是定义一个最小的必需扩展,来支持松散协作的应用使用 Atom 和 RSS feed 来作为条目共享的基础——也就是说,在两个或多个跨订阅的 feed 之间对新的和变更的条目异步地进行同步。

在这样的集成形式中,资源表示 - 通常指的是规范的数据模型,以feed 的方式暴露出来,并可以被端点用于提取同步(pull-synchronization)。如果加上端点可以是各种能够通过使用HTTP 的GET 语义来同步资源状态的设备,服务,应用程序等等这种思想,这种模式将会更加普遍适用。

查看英文原文: GET-only REST Integration Patterns Blur The Line Between Synchronization And Integration

2009-10-30 05:512165
用户头像

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

关注

评论

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

扒官方文档学Ts类型编程(二)

GFE

typescript 前端

图解vue3.0编译器核心原理

GFE

前端 Vue3

Discount-industrial mini pcie card/Dual Band 2.4GHz 5GHz 2x2 MIMO 802.11ac Mini PCIE WiFi Module//QCA9880 3x3 FCC/CE/IC

Cindy-wallys

QCA9880 802.11ac 3*3 2*2 2.4G&5G

新闻新体验!3DCAT助力开启红网“元宇宙”新闻直播间

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

「边缘运算-工厂大脑-云指挥调度中心」的全方位异常事件告警处理架构|智慧工厂系列专题04

EMQ映云科技

物联网 IoT 11月月更 边缘运算 云边协同

WEB项目如何通知用户在线更新?

GFE

前端 版本管理

前端 30 问:愿你能三十而立

GFE

面试 前端

《数字经济全景白皮书》中国商业银行普惠金融可持续发展能力评价

易观分析

银行 普惠金融

什么是实时渲染及其重要性

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

网络爬虫技术及应用

郑州埃文科技

网络安全 IP地址资源 爬虫技术

详解linux多线程——互斥锁、条件变量、读写锁、自旋锁、信号量

C++后台开发

多线程 后端开发 linux开发 C++开发

实时渲染如何改变视频制作和动画制作

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

软件测试 | 测试开发 | 测试人生 | 低学历无未来?从小公司到拿下年薪45W+ ,这个90后小哥哥好励志~

测吧(北京)科技有限公司

测试

深圳大数据培训哪个机构比较靠谱

小谷哥

Spring Boot「22」使用 Hibernate & JPA 持久化 Java 对象

Samson

Java hibernate Spring Boot 学习笔记 11月月更

新一代音视频架构在元宇宙场景的实践

网易云信

音视频开发

华为开发者大会2022直播攻略请查收!

HarmonyOS开发者

HarmonyOS

Wallys//IPQ8072/IPQ8074/IPQ8072A/IPQ8074A/HighPower 802.11ax SoC for Routers, Gateways and Access Points

Cindy-wallys

wifi6 IPQ8074 IPQ8074A

python小知识-classmethod类方法

AIWeker

Python 人工智能 python小知识 11月月更

7k字,12张图,从零到一带你详解Redis

Java永远的神

数据库 nosql redis 程序员 面试

【网易云信】新一代音视频架构在元宇宙场景的实践

网易智企

音视频开发

决策树-用回归树拟合正弦曲线

烧灯续昼2002

机器学习 决策树 sklearn 11月月更

软件测试 | 测试开发 | 校招面试真题 | 面试时被问到知识盲区,该怎么办呢?

测吧(北京)科技有限公司

测试

通过云效 CI/CD 实现微服务全链路灰度

阿里巴巴云原生

阿里云 微服务 云原生

Oracle表空间设计基本原则

默默的成长

oracle 前端 11月月更

存在“致命缺陷”?低代码发展方向如何?

SoFlu软件机器人

Go语言入门12—异常

良猿

Go golang 后端 11月月更

扒官方文档学Ts类型编程

GFE

typescript 前端

CAD和实时渲染之间的差距

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

为什么应该切换到实时渲染

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

实时渲染将如何改变工作方式

3DCAT实时渲染

云计算 元宇宙 实时渲染 实时云渲染 云VR

纯GET的REST集成模式——是同步,还是集成?_SOA_Dilip Krishnan_InfoQ精选文章