《RPC 应用与原理概述》之入门介绍
Posted 80后柳先生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《RPC 应用与原理概述》之入门介绍相关的知识,希望对你有一定的参考价值。
什么是 gRPC
Google开发的一个高性能的、开源的、普遍通用的RPC框架。
gRPC本质上仍然遵循常规的Remote Procedure Call (RPC) 技术,但是在实现上使用了HTTP2.0、协议缓冲区等技术方案,在最大程度上确保服务端和客户端的互操作性及性能上的提升
为什么用 gRPC
1.从性能上,在高并发场景下(>1000),其吞吐率远大于 dubbo,响应时间更低,参看压测结果:
grpc 性能测试
https://blog.csdn.net/u012888052/article/details/78617862
2.从功能上,其能力更丰富,支持四种使用方式,分别是客户端流模式,服务端流模式,双向流模式和普通调用
3.从使用成本上,容易上手
4.从成熟度上,开源社区活跃,应用广泛
5.从应用特点上,需要流式传输,提高响应的时效性
为什么gRPC是高效的
1.基于HTTP2构建,既支持传统的请求-响应模型,也支持双向流模型
2.可以将数据转换到协议缓冲区
3.支持多路复用
4.网络传输的是二进制数据,相对于JSON等文本数据更加轻量级
5.多语言支持,
什么是协议缓冲区
协议缓冲区(Protobuf)是一种将结构化数据序列化的方法
它包括两部分:
一部分是描述某些数据结构的接口描述语言
一部分是从该描述语言中生成源代码的程序,这个程序用于生成或解析这些结构化数据的字节流
PB(protocol buffer)快在哪里?
快主要体现在序列化、反序列化和数据传输上
第⼀,它使⽤ proto 编译器,⾃动进⾏序列化和反序列化,速度⾮常快,⽐ XML 和 JSON 快上了 20~100 倍;
第⼆,数据压缩效果好,这样可以让其序列化后的数据量体积⼩。因为体积⼩,传输起来带宽和速度上会非常快
关于HTTP2
http2简述
https://zhuanlan.zhihu.com/p/26559480
以上是关于《RPC 应用与原理概述》之入门介绍的主要内容,如果未能解决你的问题,请参考以下文章