rest的6个优点:
1.客户-服务器(Client-Server)客户端服务器分离
优点,提高用户界面的便携性(操作简单)
通过简化服务器提高可伸缩性(高性能,低成本)
允许组件分别优化(可以让服务端和客户端分别进行改进和优化)
2.无状态(Stateless)
从客户端的每个请求要包含服务器所需要的所有信息
优点:
提高可见性(可以单独考虑每个请求)
提高了可靠性(更容易从局部故障中修复)
提高可扩展性(降低了服务器资源使用)
3.缓存(Cachable)
服务器返回信息必须被标记是否可以缓存,如果缓存,客户端可能会重用之前的信息发送请求。
优点:
减少交互次数
减少交互的平均延迟
4.分层系统(Layered System)
系统组件不需要知道与他交流组件之外的事情。封装服务,引入中间层。
优点:
限制了系统的复杂性
提高可扩展性
5.统一接口(Uniform Interface)
优点:
提高交互的可见性
鼓励单独改善组件
6.支持按需代码(Code-On-Demand 可选)
优点:
提高可扩展性