当前位置:云计算行业动态 → 正文

RESTful API的未来

责任编辑:editor007 |来源:企业网D1Net  2017-10-21 17:29:23 本文摘自:SDNLAB

REST是一种万维网软件架构风格,目的是便于不同软件/程序在网络(例如互联网)中互相传递信息。目前在三种主流的Web服务实现方案中,因为REST模式与复杂的SOAP和XML-RPC相比更加简洁,越来越多的web服务开始采用REST风格设计和实现。

有状态和无状态组件之间的区别

简单对象访问协议(SOAP)中的网络组件被称为模块,它是交换数据的一种协议规范,使用在计算机网络Web服务(web service)中,交换带结构信息,SOAP能够使开发人员查找过程并绑定代码执行。 REST使系统组件能够表示一个要求访问的资源,其实现细节是真正的黑匣子。使用SOAP,不能假设远程组件是无状态的。而REST则不同,REST可以假设所有调用都是无状态的。

REST的这一属性使得其在云计算应用中非常有价值,因为它支持在无法通过缩放以适应负载变化的意外故障的情况下自由部署无状态组件。其背后的主要原因是它能够将任何请求重定向到组件的应用实例中。SOAP也可以这样构建,但不是强制性的。

这是REST成为Web服务首选协议的主要原因之一,但RESTful模式也适用于云服务。将API绑定到服务的过程是控制URL解码过程的技术,当应用程序通过URL熟悉组件或为服务器,并且原始组件实例失败时,可以通过更改与该URL相关联的IP地址将请求重定向到新的实例中。在这种情况下,不需要目录管理,只需要简单的算法就可以将URL指向负载均衡器来分配工作。

云计算和微服务的应用需求

由于微服务和云计算正在将RESTful API当做是通往未来的设计,开发人员和架构师必须解决其应用程序中的状态控制一致性,通过更松散的组件耦合来管理安全性,并创建有效的服务目录。

管理REST的状态可以通过两种方式完成:将状态传递给RESTful呼叫服务,并使状态由后端数据库维护。如果最终目标是获得符合REST的应用程序,如基于SOAP的应用程序,那么采取一致性的方式至关重要。除非无法访问后端状态数据库,否则后端状态管理是这种应用程序的最佳选择。如果客户端实例失败,客户端状态控制可能会导致整个组织出现问题。

安全措施

REST的实现存在大量的安全隐患,大多数REST用户通常认为任何应用程序的REST组件来自VPN或开放的Internet。为了确保REST的安全性,组织必须建立可部署组件的专用RFC 1918地址空间,在某些情况下,某些应用程序可能需要组件之间更广泛的集成,组织必须采用包括HTTPS的安全连接。

虽然REST有很多目录服务,如ProgrammableWeb,但这些服务主要关注公开的API。RESTful API正处于互联网行业的辩证阶段,实际上大多数公司都需要一个专用的API目录来访问RESTful API。 否则,将导致公司数据和合规性要求受损。

原文链接:https://www.cioreview.com/news/future-of-restful-api-for-developers-nid-25059-cid-111.html

关键字:APIRESTful带结构

本文摘自:SDNLAB

x RESTful API的未来 扫一扫
分享本文到朋友圈
当前位置:云计算行业动态 → 正文

RESTful API的未来

责任编辑:editor007 |来源:企业网D1Net  2017-10-21 17:29:23 本文摘自:SDNLAB

REST是一种万维网软件架构风格,目的是便于不同软件/程序在网络(例如互联网)中互相传递信息。目前在三种主流的Web服务实现方案中,因为REST模式与复杂的SOAP和XML-RPC相比更加简洁,越来越多的web服务开始采用REST风格设计和实现。

有状态和无状态组件之间的区别

简单对象访问协议(SOAP)中的网络组件被称为模块,它是交换数据的一种协议规范,使用在计算机网络Web服务(web service)中,交换带结构信息,SOAP能够使开发人员查找过程并绑定代码执行。 REST使系统组件能够表示一个要求访问的资源,其实现细节是真正的黑匣子。使用SOAP,不能假设远程组件是无状态的。而REST则不同,REST可以假设所有调用都是无状态的。

REST的这一属性使得其在云计算应用中非常有价值,因为它支持在无法通过缩放以适应负载变化的意外故障的情况下自由部署无状态组件。其背后的主要原因是它能够将任何请求重定向到组件的应用实例中。SOAP也可以这样构建,但不是强制性的。

这是REST成为Web服务首选协议的主要原因之一,但RESTful模式也适用于云服务。将API绑定到服务的过程是控制URL解码过程的技术,当应用程序通过URL熟悉组件或为服务器,并且原始组件实例失败时,可以通过更改与该URL相关联的IP地址将请求重定向到新的实例中。在这种情况下,不需要目录管理,只需要简单的算法就可以将URL指向负载均衡器来分配工作。

云计算和微服务的应用需求

由于微服务和云计算正在将RESTful API当做是通往未来的设计,开发人员和架构师必须解决其应用程序中的状态控制一致性,通过更松散的组件耦合来管理安全性,并创建有效的服务目录。

管理REST的状态可以通过两种方式完成:将状态传递给RESTful呼叫服务,并使状态由后端数据库维护。如果最终目标是获得符合REST的应用程序,如基于SOAP的应用程序,那么采取一致性的方式至关重要。除非无法访问后端状态数据库,否则后端状态管理是这种应用程序的最佳选择。如果客户端实例失败,客户端状态控制可能会导致整个组织出现问题。

安全措施

REST的实现存在大量的安全隐患,大多数REST用户通常认为任何应用程序的REST组件来自VPN或开放的Internet。为了确保REST的安全性,组织必须建立可部署组件的专用RFC 1918地址空间,在某些情况下,某些应用程序可能需要组件之间更广泛的集成,组织必须采用包括HTTPS的安全连接。

虽然REST有很多目录服务,如ProgrammableWeb,但这些服务主要关注公开的API。RESTful API正处于互联网行业的辩证阶段,实际上大多数公司都需要一个专用的API目录来访问RESTful API。 否则,将导致公司数据和合规性要求受损。

原文链接:https://www.cioreview.com/news/future-of-restful-api-for-developers-nid-25059-cid-111.html

关键字:APIRESTful带结构

本文摘自:SDNLAB

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^