Restful

Representational State Transfer (REST) is a software architecture style consisting of guidelines and best practices for creating scalable web services. REST is a coordinated set of constraints applied to the design of components in a distributed hypermedia system that can lead to a more performant and maintainable architecture.web

 

  从上面的定义中,咱们能够发现REST实际上是一种组织Web服务的架构,而并非咱们想象的那样是实现Web服务的一种新的技术,更没有要求必定要使用HTTP。其目标是为了建立具备良好扩展性的分布式系统。缓存

  反过来,做为一种架构,其提出了一系列架构级约束。这些约束有:服务器

  1. 使用客户/服务器模型。客户和服务器之间经过一个统一的接口来互相通信。
  2. 层次化的系统。在一个REST系统中,客户端并不会固定地与一个服务器打交道。
  3. 无状态。在一个REST系统中,服务端并不会保存有关客户的任何状态。也就是说,客户端自身负责用户状态的维持,并在每次发送请求时都须要提供足够的信息。
  4. 可缓存。REST系统须要可以恰当地缓存请求,以尽可能减小服务端和客户端之间的信息传输,以提升性能。
  5. 统一的接口。一个REST系统须要使用一个统一的接口来完成子系统之间以及服务与用户之间的交互。这使得REST系统中的各个子系统能够独自完成演化。

  若是一个系统知足了上面所列出的五条约束,那么该系统就被称为是RESTful的。架构

相关文章
相关标签/搜索