RPC(远程过程调用),简单说:像调用本地函数一样调用远端机器上的方法,屏蔽网络底层细节。
一般用于分布式系统中的跨网络通信
注意区分RPC框架和RPC协议
RPC框架基于RPC协议实现
优点:
1.高性能:RPC框架通常采用高效的网络通信协议、序列化/反序列化机制
2.丰富的额外功能:负载均衡、服务发现、容错机制...,能提高系统可靠性、可用性、稳定性
3.支持动态扩展:开发者可动态扩展RPC功能,比如自定义负载均衡器、自定义序列化协议...
其他:调用简单、跨语言调用....
疑问:
什么叫通常采用高效的网络通信协议、序列化/反序列化机制,难道用的这些不是固定的吗?
不是固定的可以自由选择,固定了就是某一种确定的rpc框架了比如gRPC、Dubbo...