rpc理解

rpc 远程过程调用

rpc与http的区别

1.性能高 2.使用复杂 3.可扩展性高 4 跨语言支持 5.可以使用服务发现,负载均衡,熔断降级

rpc远程调用,必须传输数据,需要序列化。

序列化有多种方式:

jdk原生序列化,使用简单,缺点 占用较多存储空间 不支持跨语言

json 优点都有,缺点序列化/反序列化性能低

hessian 需要额外的依赖,且需手动处理引用关系问题

protobuf 非常高序列化性能,缺点需要额外依赖,数据格式不直观,不适合动态扩展性高的场景

多路复用 reactor 模型,用单线程处理多个socket请求,获取到的socket先进行注册,交由handle处理。客户端有特定行为,会触发事件。服务端遍历事件,进行处理。

相关推荐
网安小白的进阶之路9 小时前
A模块 系统与网络安全 第四门课 弹性交换网络-6
网络·安全·web安全
无聊的小坏坏13 小时前
从单 Reactor 线程池到 OneThreadOneLoop:高性能网络模型的演进
服务器·网络·一个线程一个事件循环
还下着雨ZG14 小时前
TCP/IP协议族详细介绍
网络·网络协议·tcp/ip·计算机网络
国服第二切图仔14 小时前
Rust开发之Trait 定义通用行为——实现形状面积计算系统
开发语言·网络·rust
蒙奇D索大14 小时前
【计算机网络】[特殊字符] 408高频考点 | 数据链路层组帧:从字符计数到违规编码,一文学透四大实现方法
网络·笔记·学习·计算机网络·考研
奋斗的牛马15 小时前
OFDM理解
网络·数据库·单片机·嵌入式硬件·fpga开发·信息与通信
忧郁的橙子.16 小时前
一、Rabbit MQ 初级
服务器·网络·数据库
q***74817 小时前
在Linux系统上使用nmcli命令配置各种网络(有线、无线、vlan、vxlan、路由、网桥等)
linux·服务器·网络
周杰伦_Jay17 小时前
【RPC:分布式跨节点透明通信协议】【Raft:简单易实现的分布式共识算法】
分布式·rpc·共识算法
我也要当昏君17 小时前
4.1.8 【2022 统考真题】
运维·服务器·网络