RPC
RPC(Remote Procedure Call)是一种进程间通信方式,通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议”。
RPC 允许程序调用另一个地址空间的过程或函数,而不用程序员显式编码这个远程调用的细节。
RPC 框架代表
Dubbo、Thrift、gRPC
RPC 框架用到哪些技术
如何建立通信
Java 语言中的 Netty,这是一个优秀的网络通信框架。在 Dubbo、Motan 中都应用了 Netty。
如何进行网络传输
建立通信之后,节点之间数据传输采用什么协议,也就是选择什么样的二进制数据格式组织;传输的数据如何序列化和反序列化,比如在 Dubbo 中,传输协议默认使用 Dubbo 协议,序列化支持选择 Hessian、Kryo、Protobuf 等不同方式。
如何进行服务注册和发现
服务注册,需要服务提供者启动后主动把服务注册到注册中心,注册中心存储了该服务的 IP、端口、调用方式(协议、序列化方式)等信息。