解答有关REST的十点疑惑
2014-08-12 17:25
197 查看
http://www.infoq.com/cn/articles/tilkov-rest-doubts
http://blog.csdn.net/ant_ren/article/details/7963517 http://www.douban.com/note/74326774/
REST之所以能够提高系统的可伸缩性,是因为它强制所有操作都是stateless的,这样就没有context的约束,如果要做分布式、做集群,就不需要考虑context的问题了。同时,它令系统可以有效地使用pool。REST对性能的另一个提升来自其对client和server任务的分配:server只负责提供resource以及操作resource的服务,而client要根据
resource中的data和representation自己做render。这就减少了服务器的开销。
rest 请求的好处
到底为什么要用REST这种设计风格呢,好处如下:
可以充分利用缓存cache来提高响应速度
通讯本身的无状态可以让不同的服务器的处理所有类型的请求,提供了服务器的扩展性
浏览器就可以充当客户端,简化软件需求
相对于其他叠加在HTTP协议只上的极致,REST依赖性更小
不需要额外的资源发现机制
在软件技术演进中长期来看具有良好的兼容性
REST特点
* 客户端-服务器:拉风格的交互模式:消费方组件把表示拉出来
* 无状态:每个从客户端到服务器的请求必须包含足够的信息使得服务器理解该请求,不需要服务器上存储的上下文信息
* 缓存:为了提高网络效率,响应应该可以被标示成可缓存的或是不可缓存的
* 统一的接口:所有资源通过通用的接口访问(HTTP GET, POST, PUT, DELETE)
* 命名资源:系统由通过URL命名的资源组成
* 互连的资源表示:资源的表示通过URL互相联系起来,从而客户端可以从一个状态转换到另一个
* 层次化的组件:中间件,比如代理服务器,缓存服务器,网关等,可以插入到客户端和资源中间来完成安全和安全等功能
http://blog.csdn.net/ant_ren/article/details/7963517 http://www.douban.com/note/74326774/
REST之所以能够提高系统的可伸缩性,是因为它强制所有操作都是stateless的,这样就没有context的约束,如果要做分布式、做集群,就不需要考虑context的问题了。同时,它令系统可以有效地使用pool。REST对性能的另一个提升来自其对client和server任务的分配:server只负责提供resource以及操作resource的服务,而client要根据
resource中的data和representation自己做render。这就减少了服务器的开销。
rest 请求的好处
到底为什么要用REST这种设计风格呢,好处如下:
可以充分利用缓存cache来提高响应速度
通讯本身的无状态可以让不同的服务器的处理所有类型的请求,提供了服务器的扩展性
浏览器就可以充当客户端,简化软件需求
相对于其他叠加在HTTP协议只上的极致,REST依赖性更小
不需要额外的资源发现机制
在软件技术演进中长期来看具有良好的兼容性
REST特点
* 客户端-服务器:拉风格的交互模式:消费方组件把表示拉出来
* 无状态:每个从客户端到服务器的请求必须包含足够的信息使得服务器理解该请求,不需要服务器上存储的上下文信息
* 缓存:为了提高网络效率,响应应该可以被标示成可缓存的或是不可缓存的
* 统一的接口:所有资源通过通用的接口访问(HTTP GET, POST, PUT, DELETE)
* 命名资源:系统由通过URL命名的资源组成
* 互连的资源表示:资源的表示通过URL互相联系起来,从而客户端可以从一个状态转换到另一个
* 层次化的组件:中间件,比如代理服务器,缓存服务器,网关等,可以插入到客户端和资源中间来完成安全和安全等功能
相关文章推荐
- 解答有关REST的十点疑惑
- 解答有关REST的十点疑惑
- 解答有关REST的十点疑惑
- 有关int,Int32的疑惑解答
- 有关Python初学者对于yield于生成器(generator)疑惑的终极解答
- [网摘]---有关int,Int32的疑惑解答
- 有关Sybase ASE数据库的几个问题的解答
- 有关考试安全和完整性的常见问题解答
- 有关 Azure IaaS VM 磁盘以及托管和非托管高级磁盘的常见问题解答
- 【JavaScript学习笔记】5:有关函数,typeof,参数过多/不足,arguments,rest
- 有关Sybase ASE数据库的几个问题的解答
- 寻求疑惑解答
- 百分求解一个可能涉及比较多的一个有关问题,求熟悉javascript或者ASP无组件上传或者AJAX等等的高手帮忙解答,非常感谢!
- java学习中一些疑惑解答(2)
- 有关visio的疑惑
- 有关.Net的WCF Rest的知识
- 个人学习卷积神经网络的疑惑解答
- Davinci-DM6467板子-外围器件的I2C地址的疑惑解答
- 有关REST的一点学习笔记