zoukankan      html  css  js  c++  java
  • restful与rpc请求风格

    restful简称rest:

              rest是以资源为中心,使用统一的接口url,使用get,post,put,patch,delete等方法来请求资源

    rest风格原则条件:

      C/S结构,

           无状态:web应用程序最重要的rest原则是,客户端和服务的之间的交互在请求之间是无状态的。

            可以cache(缓存):无状态请求可以由任何可用服务器回答

      统一接口:在服务器端,应用程序状态和功能可以分为各种资源,资源是一个概念实体,它向客户端公开,所有资源都使用URI( Universal Resource Identifier 通用资源标识),所有资源都共享统一的接口,以便在客户端和服务端之间传输状态。

      分层系统:表示组件无法了解 它与之交互的中间层 以外的组件,通过将系统知识限制在单个层,可以限制整个系统的复杂性,促进底层独立性。

    rpc:

      rpc即远程调用,以资源为中心,RPC是分布式架构的核心,按响应方式分为两种:

      同步调用:客户端调用服务方法,等待服务端返回结果或超时,再继续自己的操作

      异步调用:客户端把消息发送给中间件,不在等待服务端返回,直接继续自己的操作

      同步调用的实现方式有WebService和Rmi,WebService提供的服务基于web容器,底层是http协议,因而适用于不同语言异构系统见的调用。

      异步调用的实现方式JMS(JAVA Message Service)消息中间件

    RPC与REST的区别:

      1.RPC通常使用TCP,UDP通信协议,二进制方式的通讯协议,json序列化

       REST通常使用http通讯协议,json序列化

      2.RPC以操作方法为中心

         REST以资源为中心

      3.RPC在扩展的时候不方便,因为当你需要加入新的功能的时候需要加入更多的方法,服务端去实现相应的方法,客户端去调用相应的方法

      而REST方便扩展,以资源为核心,例如 host/aa 这个请求路径,无论这个路径对应的服务怎么变化客户端无需关注和更新,因为客户端关注的是它的url

      使用聊天软件时用的是RPC风格的通讯,使用浏览器,通过http请求服务资源时用的是RES风格

    原文:https://www.cnblogs.com/hello-/articles/9958943.html

          https://blog.csdn.net/u010547839/article/details/88422143

  • 相关阅读:
    SSM应用(五)--参数绑定
    SSM应用(四)--SpringMVC入门
    Oracle常用函数
    SSM应用(三)--Spring整合MyBatis
    SSM应用(二)--注解的使用
    SSM应用(一)--Spring入门
    MyBatis学习(十四)--逆向工程使用
    MyBatis学习(十三)--缓存
    MyBatis学习(十二)--懒加载
    MySQL常用函数
  • 原文地址:https://www.cnblogs.com/HQ0422/p/13173814.html
Copyright © 2011-2022 走看看