RPC(Remote Procdure Call)远程过程调用是一种用于实现在分布式系统中进行跨网络通信的技术,也是一种计算机通信协议。
RPC框架是基于RPC协议实现的。
RPC允许一个程序(服务消费者)像调用自己程序的方法一样,调用另一个程序(服务提供者)的接口,无需关心数据的传输处理、数据编解码和底层网络通信的细节。
这样一种功能的实现都是由RPC框架来完成的,这就使得开发者能够更轻松地调用远程服务,快速开发分布式系统。
RPC框架通常采用的是高效地网络通信协议(主流为性能远超HTTP的TCP协议)和高效轻量的序列化/反序列化机制;
RPC框架提供的负载均衡、服务发现和容错机制(超时重试、熔断降级、限流等)可以提高系统的可靠性、可用性以及稳定性。
除此之外,开发者还可以自定义负载均衡器和序列化协议,动态地扩展RPC的功能。