首页 >

为什么还要用rpc调用 – CSS – 前端,css中经过时背景颜色渐变

css文字在底部,js $改变css,css定位技巧大全,css中的父子定位,css同行图片文字对齐,html和css详细教程下载,css中经过时背景颜色渐变为什么还要用rpc调用 - CSS - 前端,css中经过时背景颜色渐变

首先 http 和 rpc 并不是一个并行概念。

rpc是远端过程调用,其调用协议通常包含传输协议和序列化协议。

传输协议包含: 如著名的 [gRPC](grpc / grpc.io) 使用的 http2 协议,也有如dubbo一类的自定义报文的tcp协议。

序列化协议包含: 如基于文本编码的 xml json,也有二进制编码的 protobuf hessian等。

因此偶理解的你想问的问题应该是:为什么要使用自定义 tcp 协议的 rpc 做后端进程通信?

要解决这个问题就应该搞清楚 http 使用的 tcp 协议,和大家自定义的 tcp 协议在报文上的区别。

首先要否认一点 http 协议相较于自定义tcp报文协议,增加的开销在于连接的建立与断开。http协议是支持连接池复用的,也就是建立一定数量的连接不断开,并不会频繁的创建和销毁连接。二一要说的是http也可以使用protobuf这种二进制编码协议对内容进行编码,因此二者最大的区别还是在传输协议上。

HTTP有用信息占比少,毕竟HTTP工作在第七层,包含了大量的HTTP头等信息。其次是效率低,还是因为第七层的缘故。还有,其可读性似乎没有必要,因为大家可以引入网关增加可读性。此外,使用HTTP协议调用远程方法比较复杂,要封装各种参数名和参数值。

通用定义的http1.1协议的tcp报文包含太多废信息,一个POST协议的格式大致如下:

HTTP/1.0 200 OK

Content-Type: text/plain

Content-Length: 137582

Expires: Thu, 05 Dec 1997 16:00:00 GMT

Last-Modified: Wed, 5 August 1996 15:55:28 GMT

Server: Apache 0.84

<html>

<body>Hello World</body>

</html>

即使编码协议也就是body是使用二进制编码协议,报文元数据也就是header头的键值对却用了文本编码,非常占字节数。如上图所使用的报文中有效字节数仅仅占约 30%,也就是70%的时间用于传输元数据废编码。当然实际情况下报文内容可能会比这个长,但是报头所占的比例也是非常可观的。

那么假如大家使用自定义tcp协议的报文如下:

报头占用的字节数也就只有16个byte,极大地精简了传输内容,采用自定义tcp协议的rpc来进行通信减少了通讯内容,可以提高通讯效率。

所谓的效率优势是针对http1.1协议来讲的,http2.0协议已经优化编码效率问题,像grpc这种rpc库使用的就是http2.0协议。这么来说吧http容器的性能测试单位通常是kqps,自定义tpc协议则通常是以10kqps到100kqps为基准

简单来说成熟的rpc库相对http容器,更多的是封装了“服务发现”,”负载均衡”,“熔断降级”一类面向服务的高级特性。可以这么理解,rpc框架是面向服务的更高级的封装。如果把一个http servlet容器上封装一层服务发现和函数代理调用,那它就已经可以做一个rpc框架了。

所以为什么要用rpc调用?因为良好的rpc调用是面向服务的封装,针对服务的可用性和效率等都做了优化。单纯使用http调用则缺少了这些特性。


为什么还要用rpc调用 - CSS - 前端,css中经过时背景颜色渐变
  • html中怎么添加两个连接在一起并且居中的盒子 - CSS - 前端,js css文件路劲
  • html中怎么添加两个连接在一起并且居中的盒子 - CSS - 前端,js css文件路劲 | html中怎么添加两个连接在一起并且居中的盒子 - CSS - 前端,js css文件路劲 ...

    为什么还要用rpc调用 - CSS - 前端,css中经过时背景颜色渐变
  • 如果子元素是绝对定位的话 - CSS - 前端,Kacss是什么意思
  • 如果子元素是绝对定位的话 - CSS - 前端,Kacss是什么意思 | 如果子元素是绝对定位的话 - CSS - 前端,Kacss是什么意思 ...

    为什么还要用rpc调用 - CSS - 前端,css中经过时背景颜色渐变
  • 2021河南邮政集团招聘考试内容 - CSS - 前端,css文字强制不折行
  • 2021河南邮政集团招聘考试内容 - CSS - 前端,css文字强制不折行 | 2021河南邮政集团招聘考试内容 - CSS - 前端,css文字强制不折行 ...