本小节开始介绍grpc框架中的多路复用相关原理。
1、多路复用可以实现什么功能?或者可以使用在什么场景下? |
可以使用同一链接处理多个服务请求;
- 同一服务的多次请求,
- 或者不同服务的多次请求;
从而提供了链接的利用率
2、grpc框架为什么会选择HTTP2作为传输协议呢? |
至少原因之一:
- http1.1不支持多路复用;
- 在HTTP1.1中每一次的请求都要建立一次连接;
- 一个完整的服务请求,可能需要建立多次连接,
- 既然多次请求都是为了完成一次完整的服务请求,那么为什么多次请求不使用同一个连接呢?使用同一个连接的话,肯定会减少连接的创建时间,资源消耗等
- 而在HTTP2中,一次连接建立后,可以支持多次服务请求;提高了连接利用率