rpc调用和http调用的区别 rpc( 三 )


本地调用和RPC调用的差异
无论RPC怎样努力把远程调用伪装的像本地调用,但它们依然有很大的不同点,而且有一些异常情况是在本地调用时绝对不会碰到的 。在说异常处理之前,我们先厅氏皮比较下本地调用和RPC调用的一些差异:
1、本地调用一定会执行,而远程调用则不一定,调用消息可能因为网络原因并未发送到服务方 。
2、本地调用只会抛出接口声明的异常,而远程调用还会跑出RPC框架运行时的其他异常 。
3、本地调用和远程调用的性能可能差距很大,这取决于RPC固有消耗所占的比重 。
什么是RPC服务
俗称远程过程调用,是常用的一种高效的服务调用方式,也是性能压测时经常遇到的一种服务调用形式 。常见的RPC有GRPC、、Dubbo等 。
RPC简单理解就是说两台服务器A,B,一个应用部署在A服务器上,想要调用B服务器上应用提供的函纳山宏数/方法,由于不在个内存空间,不能直接洞册调用,需要通过网络来表达调用的语义和传达调用的数据 。
RPC就是要像调用本地的函数一唯带样去调远程函数 。假设我们要调用函数Add来计算 * 的结果,直接调用Add方法即可 。在远程调用时,我们要执行的函数在远程的机器上 。