读书笔记1.1-基于TCP协议的RPC
Posted java思维导图
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了读书笔记1.1-基于TCP协议的RPC相关的知识,希望对你有一定的参考价值。
读书笔记第一时间送达!
1.1.1RPC名词解释
概念
全称Remote Process Call,即远程过程调用
rpc的实现包括服务的调用方和服务的提供方
过程
服务调用方发送RPC请求到服务提供方,服务提供方根据调用方提供的参数执行请求方法,将执行的结果返回给调用方,一次RPC调用完成
使用原因
单台服务器处理能力有限,RPC可提升系统处理能力和吞吐量,也是实现分布式计算的基础
1.1.2对象序列化
序列化原因
任何形式的数据都需要转换成二进制流在网络传输
概念
对象序列化-将对象转换为二进制流的过程
对象反序列化-将二进制流恢复为对象的过程
解决方案
Google的Protocal Buffers
Java内置的序列化方式
Hessian
JSON和XML
引入二方包hession.jar
1.1.3基于TCP协议实现RPC
原理
基于java的反射机制和Socket API实现
方法的调用使用反射机制,消费者把需要调用的接口名称方法参数通过Socket通道传到服务端,服务端再通过反射机制调用对应的方法获取到值。然后再通过相同方式把结果返回给消费端
场景
服务消费者调用服务提供者的SayHelloService接口的sayHello()方法具体实现获取结果
关键代码
服务提供者
服务提供者
总结
真实环境中,多个客户端多个请求,服务端需要同时接收和处理,涉及并发、路由、负载均衡等问题,以上代码无法满足。
下期预告:
-
【读书笔记】1.2-基于HTTP协议的的RPC
以上是关于读书笔记1.1-基于TCP协议的RPC的主要内容,如果未能解决你的问题,请参考以下文章