RPC服务治理框架学习

    技术2022-07-11  94

    RPC服务治理框架学习

    RPC是什么RPC和RMI有什么区别webservice,restfull接口调用都时RPC远程过程调用和本地调用有什么区别 RPC的流程RPC协议RPC框架为什么要用RPC

    RPC是什么

    RPC:remote procedure call(远程过程调用:即调用远程的程序) RPC采用Client-Server结构,通过request-response消息模式实现。

    RPC和RMI有什么区别

    RMI(remote method invocation)远程方法调用时oop领域中RPC的一种具体实现

    webservice,restfull接口调用都时RPC

    远程过程调用和本地调用有什么区别

    速度相对慢,可靠性降低

    RPC的流程

    本地调用 参数编组为消息-发向服务端 解组消息并传输给服务器 Client Client stub Server stub Server

    1.客户端处理过程中调用Client stub,传递参数; 2.Client stub将参数编组为消息,然后通过系统调用向服务端发送消息; 3.客户端本地操作系统将信息从客户端机器发送到服务端机器;4.服务端操作系统将接收的数据包传递给Server stub; 5.Server stub解组消息为参数; 6.Server stub再调用服务端的过程,过程执行结果以反方向的相同步骤响应给客户端。

    RPC协议

    RPC调用过程中需要将参数编组为消息,接收方需要解组消息,消息由哪些部分构成及消息的表示形式就构成了消息协议。 RPC调用过程中采用的消息协议就称为RPC协议。 在TCP上可以选用或自定义协议来完成RPC消息交互,可以选用通用协议(http,https)。

    RPC框架

    封装好参数编组、消息解组、底层网络通信的RPC程序开发框架,带来的便捷是可以直接在其基础上只专注于过程代码编写。 webservice框架:Apache CXF、Apache Axis2、java自带的JAX-WS等,webService框架大多基于标准的SOAP协议。 新兴的微服务框架:Dubbo、springcloud、Apache Thrift等等。

    为什么要用RPC

    服务化,可重用,系统间交互调用

    Processed: 0.010, SQL: 9