Rest

尽管REST 在消息处理速度上和可靠性上,Http 方案会逊于消息中间件,但是Http 有如下优点,

  Http 的 协议较为简单,协议公开透明,

  Http 的成熟性,HTTP 有大量的可选的Web服务器,如Tomcat、Undertow、jetty,以及商业服务器,还有配置的wen的框架,如本书讲的Spring boot ,以及配套的负载均衡工具,Nginx、Apache,还有性能监控工具等,可伸缩性和性能都非常的优秀。

  技术的松耦合,Web 档案 并没有与其技术捆绑在一起,但有能将这些技术任意集成进来。

  Web方案成本低,Web方案,无论是购买商业服务器,还是选用技术开发人员,成本都相对较低,可选范围广。

Rest这个词四Roy Thomas Fielding 在它2000年的博士论文中提出的,Fidlding 是一个非常重要的人,他是http1.0和1.1版本的主要设计者,Apache服务器软件的作者之一,Apache 的基金会的第一任主席。

资源(Resource)

Rest 的名称“表现层状态转换,”中省略的主语,“表现层”其实指的就是“资源(Resource)”的表现层,所谓的资源,就是网络上的一个实体,或者说是网络上的一个具体的信息,他可以是一段文本,或者一张图片等总之是一个具体的实体,你可以用一个URL(统一资源的定位符)指向他,每种资源对应一个特定的URL,要获取这个资源,访问他的URL 就可以,因此URL就成了每一个组员的地址或独一无二的识别符

表现层(Representation)

资源 是一种信息实体,他可以有多重外在的表现形式,我们把“资源”具体呈现出来的形式称为他的“表现层(Representation)”,比如,文本可以用txt格式表现,也可以用html格式,xml格式、json格式标签,甚至可以采用二进制格式,Url 只代表资源的实体,独爱表他的形式,严格的说,有些网址的最后的html 后缀名是不必要的,因为这个后缀名表示的格式,属于 表现成的 范畴,而URL 应用值代表“资源” 的位置,他的具体的表现形式应该在http 请求的头信息中用Accept 和Content-Type这个两个字段指定,这两个字段才是对 “表现层” 的描述,不过在大部分应用中,通过后缀区分标签层就已经足够了。

在访问一个网站的时候,就代表了客户端和服务器的一个互动的过程,在这个过程中,势必会涉及到数据和状态的变化

Http 协议是一个无状态互联网通信协议,这意味着所有的状态都保存在服务器端,因此如果客户端想要操作服务器,必须通过某种手段,让服务器端发生“状态的变化”,而这种转化是建立在表现层之上的,所以就是“表现层窗台转化”

Http协议中,有五个常用的表示操作的方式的动词,Get(用来获取资源)、Post(新建资源)、Put(更新资源)、Delect(删除资源)、patch(更新资源的部分属性)。

WebService 是一种曾经流行的基于http的接口方式,他的初衷现在看起来仍然是那么美丽,比如:

    建立在SOAP协议上,SOAP是一种功能完善的消息转换协议,

   WSDL ,WebService 描述语言,能描述WebService 提供的服务名称,参数,调用协议等,通过WSDL 还能生成客户端的调用代码,

   WS-*,一系列与WecService相关的辅助规范,

  异构系统之间,一种互相调用方式,这在早期的异构系统之间是一种优势,然而现在基于Web应用的平台,一系列与WebService相关的辅助规范

但是在使用SOAP 协议过于复杂,是个重量级协议,SOAP 协议基于XML ,恩来就要代替更早的XML-RPc协议,但是自身越来越复杂,开发一个WebService服务实现要开发REST慢很多

只有一些商业机构实现了WS-*

在传输数据上,JSON 比XML 更为流行,XML数据封装,虽然数据表现能力强,但影响系统的性能,比如xml 解析曾经出现了一代比一代更好的方式,

xml 在网络之间传输的数据量也会大一些,不如JSON简单。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值