很多关心SOA的人士都很关注REST,我同意Sanjiva Weerawarana在InfoQ的这篇访谈:
揭秘REST/WS-* 中的观点,即:其实,面向资源的架构和面向服务的架构是有很大不同的,它们的目标也有很大的不同。REST主要是为建造面向资源的架构服务的。
面向资源的应用不一定要是面向服务的应用,同样,面向服务的应用也不一定要是面向资源的应用。但是,这并不是说REST就不能建造面向服务的架构。正相反,在很多场合,REST都能够很好地应用在面向服务的架构中,同时保留经REST风格所优化过的那些优良的架构属性。
说到SOA,就必需要说到服务发现。而REST不支持服务发现被很多人认为是它相对于SOAP的一个最大的缺点。是否要为REST添加服务发现能力也众说纷纭,最近在InfoQ等技术社区展开了很多热烈的讨论。
很高兴看到劳虎在CSDN开了自己的blog,《无废话XML》就是我当年学习XML的入门书。劳虎在上个月的一篇blog中也讨论了REST的服务发现问题:
担心未来的 REST 怪物正在形成现在WADL现在正日益得到开发者的关注,有可能发展为REST风格的服务发现的首选标准。不过据我所知,在WADL之外,其实还有一些其他的选择。
我这两天在研究OpenID及其使用的Yadis协议。Yadis协议在我看来是一种很好的服务发现协议,而且它本身就是REST风格的。
OpenID就是使用Yadis来发现服务提供者,OpenID+Yadis为REST风格的服务发现提供了一个很好的实例。
Yadis 1.0规范在:http://yadis.org/papers/yadis-v1.0.pdf
分享到:
相关推荐
集成REST服务,可以用作独立服务平台(提供大量实例及测试平台,包括:文件上传下载、邮件短信发送、部门、产品、公共连接、我的收藏、我的任务、信息发布等) 5. 集成Quartz调度,可以用作定时调度平台(动态...
REST API插件自述文件REST API插件通过向服务器发送REST / HTTP请求来提供管理Openfire的能力。 该插件的功能对于需要在Openfire管理控制台之外管理Openfire的应用程序很有用。功能清单获取所有或特定用户的概述,并...
通过API相关修改来修改现有Swagger JSON的能力-包括添加新的请求参数,响应更改 能够通过REST API识别“文件”下载,因为Swagger JSON文档具有处理文件下载的特殊方式 安装 构建包含独立jar的项目 ./gradlew clean ...
平台服务层的调用是通过RESTAPI进行的,由于REST的特点,通过在URI中添加资源路径以及版本信息,很方便地能够实现平台的平滑升级以及数据兼容性问题。 平台服务层实现的都是共通的服务,服务之间是独立的,而且...
集群服务安装npm install cluster-service 关于Turn your single process code into a fault-resilient, multi-process service withbuilt-in REST & CLI support. Restart or hot upgrade your web servers with ...
使用Spring Core和REST WS开发应用程序。 使用任何数据库。 单元测试覆盖率超过65%。 使RESTful Web服务: 添加,编辑,删除飞机。 获取航空公司中所有飞机的总载客量和载货量的计算值。 获取航空公司中所有...
一个简单的REST API,支持消息(字符串)的存储和检索,并提供确定消息是否为回文的能力。 API文档 可以在找到Postman API文档 验收标准 应该有: 可以的用户 注册登录 管理邮件(添加,删除,编辑,查看) 查看...
Angular + Rest + Spring Boot - 示例 API URI: 设备资源 资源URI 方法 ...给id={id}的设备添加一个能力 产品资源 资源URI 支持的方法 描述 /产品/ 得到 列出所有产品 /产品/ 邮政 创建新产品
使用 Watson Explorer Engine Web 服务转换器将来自整个企业的许多不同系统的内容和数据结合在一起,并在单一视图中呈现给用户,从而大大减少了查找信息所花费的时间并提高了他们更智能地工作的能力。 Watson ...
以及按照业务能力进行组织,具有通常称为有界上下文的服务分隔线。 [1] 微服务特点在于代码更容易更新 - 可以直接添加新特性或功能,而不必更新整个应用,团队可以对不同的组件使用不同的技术栈和不同的编程语言。...
Omeka 的 Europeana 插件该插件提供了一种从 Omeka 内部搜索 Europeana REST API 的方法,并显示结果以及指向 ... 在配置文件application/config/application.ini ,为您的环境添加以下设置: resources.cachemanage
作业 2 涵盖第 3-6 周概述此作业将基于原始视频服务中的想法,添加客户端的 OAuth 2.0 身份验证和“喜欢”视频的能力。 要完成此作业,您必须允许用户使用 OAuth 2.0 密码授予流程进行身份验证。 通过身份验证后,...
能力此时,Web服务器实现了一些接口: 身份验证中间件,它支持基于cookie和令牌的身份验证,以及由Linux PAM身份验证凭据支持的CSRF防护。 (不完全)尝试在C ++中复制phosphor-dbus-rest接口。 现在,一些端点定义...
此外,.NET Framework 4 还提供了新的 WCF 功能,如服务发现、路由服务、REST 支持、诊断和性能。 有关 WCF 的增强功能的完整列表,请转到此处。 创新的新并行编程功能,例如并行循环支持、任务并行库 (TPL)、并行 ...
我们将为我们网站上的餐馆和场所提供控制其数据并根据需要对其进行更新的能力,以及向我们的数据库中添加其他餐馆的能力,并使用户能够根据自己的喜好过滤数据。怎么跑验证您是否已在终端中使用以下代码安装了maven...
强大的搜索查找能力(初步使用elasticsearch存储数据)可以配合kibana使用 支持查看数据修改记录 表级权限管理 容器快速部署 前端 Vue 元素用户界面 Vue路由器 威克斯 Axios 初步 Python3 Django 1.11 Django ...
Openstack 从 Folsom 开始使用 Cinder 替换原来的Nova-Volume服务,为 Openstack 云平台提供块存储服务。 Cinder架构 /- ( LDAP ) [ Auth Manager ] --- | \- ( DB ) | | cinderclient | ...
20.8.4 使用REST Web服务 实现搜索和替换功能 428 20.9 XML-RPC 432 20.9.1 XML-RPC请求 434 20.9.2 XML-RPC中的数据 表示 434 20.9.3 XML-RPC响应 435 20.9.4 错误处理机制 436 20.9.5 通过XML-RPC展示 BittyWiki ...
构建于Spring IoC容器组件模型之上的这些Spring3部件提供了集成、批处理、OSGi、Ajax和Flex集成、状态式的Web应用、REST风格Web服务、富客户端用户界面、Google AppEngine开发、基于云的部署、消息、数据访问、Web...