- 5
- 0
- 约4.11千字
- 约 3页
- 2017-06-09 发布于北京
- 举报
REST技术调研,3种流行的WEB服务架构
REST技术调研,三种流行的WEB服务架构
SOAP RPC over HTTP面向服务的架构(面向消息)。简单对象访问协议(SOAP,全写为 Simple Object Access Protocol)是一种标准化的通讯规范,主要用于 Web 服务(web service)中。SOAP 的出现是为了简化网页服务器(Web Server)在从 XML 数据库中提取数据时,无需花时间去格式化页面,并能够让不同应用程序之间透过 HTTP 通讯协定,以 XML 格式互相交换彼此的数据,使其与编程语言、平台和硬件无关。XML RPC over HTTP远程过程调用 (面向方法)。这种远程过程调用使用 HTTP 作为传输协议,XML 作为传送信息的编码格式。XML-RPC 的定义尽可能的保持了简单,但同时能够传送、处理、返回复杂的数据结构。XML-RPC 是工作在 Internet 上的远程过程调用协议。一个 XML-RPC 消息就是一个请求体为 XML 的 HTTP POST 请求,被调用的方法在服务器端执行并将执行结果以 XML 格式编码后返回。
REST over HTTP面向资源。
REST设计原则
显式地使用 HTTP 方法基于 REST 的 Web 服务的主要特征之一是以遵循 RFC 2616 定义的协议的方式显式使用 HTTP 方法。例如,HTTP GET 被定义为数据产生方法,旨在由客户端应用程序用于检索资源以从 Web 服务器获取数据,或者执行某个查询并预期 Web 服务器将查找某一组匹配资源然后使用该资源进行响应。
REST 要求开发人员显式地使用 HTTP 方法,并且使用方式与协议定义一致。 这个基本 REST 设计原则建立了创建、读取、更新和删除(create, read, update, and delete,CRUD)操作与 HTTP 方法之间的一对一映射。 根据此映射:? 若要在服务器上创建资源,应该使用 POST 方法。? 若要检索某个资源,应该使用 GET 方法。? 若要更改资源状态或对其进行更新,应该使用 PUT 方法。? 若要删除某个资源,应该使用 DELETE 方法。
无状态设计REST Web 服务需要扩展以满足日益提高的性能要求。 具有负载平衡和故障转移功能、代理和网关的服务器集群通常以形成服务拓扑的方式进行组织,从而允许根据需要将请求从一个服务器路由到另一个服务器,以减少 Web 服务调用的总体响应时间。 要使用中间服务器扩大规模,REST Web 服务需要发送完整、独立的请求??也就是说,发送的请求包括所有需要满足的数据,以便中间服务器中的组件能够进行转发、路由和负载平衡,而不需要在请求之间 在本地保存任何状态。
完整、独立的请求不要求服务器在处理请求时检索任何类型的应用程序上下文或状态。 REST Web 服务应用程序(或客户端)在 HTTP Header 和请求正文中包括服务器端组件生成响应所需要的所有参数、上下文和数据。 这种意义上的无状态可以改进 Web 服务性能,并简化服务器端组件的设计和实现,因为服务器上没有状态,从而消除了与外部应用程序同步会话数据的需要。
服务器1.生成响应,其中包括指向其他资源的链接,以使得应用程序可以在相关资源之间导航。 此类响应嵌入了链接。 类似地,如果请求是针对父或容器资源,则基于 REST 的典型响应还可能包括指向父资源的子资源或从属资源的链接,以便这些资源保持连接在一起。
2.生成响应,其中指明了是否可缓存,以通过减少针对重复资源的请求数量或通过完全消除某些请求来改进性能。 服务器通过包括 Cache-Control 和 Last-Modified(日期值)HTTP 响应 Header 实现此目的。
客户端应用程序
1.使用 Cache-Control 响应 Header 确定是否缓存资源(创建资源的本地副本)。 客户端还读取 Last-Modified 响应 Header,并在 If-Modified-Since Header 中发回日期值,以向服务器询问资源是否已更改。 这称为条件 GET (Conditional GET),两个 Header 同时进行,因为服务器的响应为标准 304 代码 (Not Modified),如果请求的资源自从该时间以后尚未更改,则省略实际的资源。 HTTP 响应代码 304 意味着客户端可以安全地将资源表示形式的缓存本地副本作为最新版本使用,从而实际上跳过了后续 GET 请求,直到资源更改为止。
2.发 送可独立于其他请求得到服务的完整请求。 这要求客户端充分利用 Web 服务接口指定的 HTTP Header,并在请求正文中发送完整的资源表示形式。 客户端发送的请求极少对先前的请求
您可能关注的文档
最近下载
- 图案变化与统一课件设计.pptx VIP
- 2025年金融风险管理师买入看跌期权与卖出看跌期权策略专题试卷及解析.pdf VIP
- 2025年拍卖师拍卖谈判中的谈判记录与总结技巧专题试卷及解析.pdf VIP
- 2025年房地产经纪人客户隐私保护监管政策解读专题试卷及解析.pdf VIP
- 基于单片机的数控直流稳压电源的设计.docx VIP
- 县域消费扶贫与长效帮扶机制分析.pdf VIP
- 2025年项目管理专业项目交付成果验收检查表编制专题试卷及解析.pdf VIP
- 煤矿露天改扩建项目竣工验收报告.docx
- 人体解剖学复习测试有答案(二).doc VIP
- 基于stm32的智能小车设计毕业设计论文.docx VIP
原创力文档

文档评论(0)