大发UU直播快三官方_大发UU直播快3

思考gRPC :为什么是HTTP/2

时间:2019-12-27 07:27:10 出处:大发UU直播快三官方_大发UU直播快3

gRPC选着基于HTTP/2,没法 它的性能肯定我很多 是最顶尖的。或者对于rpc来说中庸的qps前要接受,通用和兼容性才是最重要的事情。

gRPC在Google的内部内部结构也是先用在Google Cloud Platform和公开的API上:https://opensource.google.com/projects/grpc

尽管gRPC它可能性替换不了内部内部结构的RPC实现,或者在开放互通的时代,不止在k8s上,gRPC会有很多的舞台前要施展。

在业界,有你你是什么 你你是什么 支持stream的方案,比如基于websocket的,可能性rsocket。或者什么方案都都不 通用的。

被委托人认为4个多重要的原应是,在Cloud Native的潮流下,开放互通的需求必然会产生基于HTTP/2的RPC。即使没法 gRPC,也会有其它基于HTTP/2的RPC。

或者大多数情形下,讨论都不 基于gRPC over HTTP2。

尽管HPAC前要压缩HTTP Header,或者对于rpc来说,选着4个多函数调用,前要繁杂为4个多int,却说 两端去协商过一次,上端直接查表就前要了,不前要像HPAC那样编码解码。

前要考虑专门对gRPC做4个多优化过的HTTP/2解析器,减少你你是什么 通用的避免,感觉前要提升性能。

只讨论协议你你是什么 的实现,不考虑序列化。

在正式讨论gRPC为什么么么在选着HTTP/2随后,亲们先来简单了解下HTTP/2。

前要看后下面什么Header:

HTTP/2前要简单用4个多图片来介绍:

gRPC是google开源的高性能跨语言的RPC方案。gRPC的设计目标是在任何环境下运行,支持可插拔的负载均衡,跟踪,运行情形检查和身份验证。它不仅支持数据中心内部内部结构和跨数据中心的服务调用,它也适用于分布式计算的最后一公里,将设备,移动应用线程池和浏览器连接到后端服务。

Google你你是什么 把你你是什么 事情想清楚了,它并没法 把内部内部结构的Stubby开源,却说 选着重新做。现在技术没法 开放,私有协议的空间没法 小。

被委托人虽然官方的文章令人印象深刻的点:

近10年来,Google制定标准的能力没法 强。下面列举你你是什么 标准:

rpc的元数据的传输存在问题高效

HTTP/2 标准你你是什么 是回会 了4个多TCP连接,或者实际在gRPC里是会有多个TCP连接,使用时前要注意。

比如传统的rpc dubbo,前要写4个多dubbo filter,前要考虑把鉴权相关的信息通过thread local传递进去。rpc协议你你是什么 也前要支持。总之,非常繁杂。实际上绝大要素公司里的rpc都不 没法 鉴权的,前要随便调。

下面从4个多真实的gRPC SayHello请求,查看它在HTTP/2上是要怎样实现的。用wireshark抓包:

在Chrome浏览器里,打开chrome://net-internals/#http2,前要看后http2链接的信息。

HTTP/2里的Stream前要设置优先级,尽管在rpc里可能性用的比较少,或者你你是什么 繁杂的场景可能性会用到。

来自:https://hpbn.co/

准确来说为什么么么在会总出 基于HTTP/2的RPC?

实际上先用上HTTP/2的也是手机和手机浏览器。移动互联网推动了HTTP/2的发展和普及。

HTTP/2 里一次gRPC调用前要解码两次

gRPC目前是k8s生态里的事实标准。 gRPC是不是 会成为更多地方,更大领域的RPC标准?

或者请求的参数在DATA frame里:

前要看后:

* HTTP/1里的header对应HTTP/2里的 HEADERS frame

* HTTP/1里的payload对应HTTP/2里的 DATA frame

HTTP/2是先有实践再有标准,你你是什么 一阵一阵要。你你是什么 你你是什么 不成功的标准都不 先有一大堆厂商讨论出标准后有实现,原应混乱而不可用,比如CORBA。HTTP/2的前身是Google的SPDY,没法 Google的实践和推动,可能性都不 会有HTTP/2。

准确来说gRPC设计上是分层的,底层支持不同的协议,目前gRPC支持:

目前你你是什么 你你是什么 网站都可能性跑在HTTP/2上了,包括alibaba。

当然google也并非都不 成功,你你是什么 你你是什么 事情它想推也失败了,比如Chrome的Native Client。

一次是HEADERS frame,一次是DATA frame。

简而言之,gGRPC把元数据装到HTTP/2 Headers里,请求参数序列化随后装到 DATA frame里。

热门

热门标签