黑马博学谷分布式RPC框架设计
RPC(Remote Process Call), 即远程过程调用, 是一个分布式系统间通信的必备技术。分布式系统的通信一般都会采用四层的TCP协议或七层的Http协议。
Http协议以其中的Restful规范为代表, 可读性好,且得到防火墙的支持、跨语言的支持。 缺点是Http协议有用信息占比太少, 效率低, 包含了大量的Http头信息。
RPC最核心要解决的问题, 就是在分布式系统之间如何调用另外一个空间的方法, 就仿佛本地调用一样。
屏蔽远程调用和本地调用的区别, 让我们感觉就像是调用本地的方法。
屏蔽网络通信的复杂性, 更加专注于业务层。
一个典型的RPC的使用场景, 包含了服务发现、负载均衡、容错、限流、网络传输、序列化等组件, 其中RPC协议就指明了如何进行网络传输和序列化。