马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
<hr> 前情提要
之前咱们聊过SpringBoot下开启多端口有3个思绪,并分析了第一种开启独立management端口的实现细节,本日咱们聊聊开启gRPC端口的实现。
<hr> 一、gRPC的特别之处
基于SpringBoot的微服务,其通讯大多基于HTTP+JSON。前者为通讯协议,后者为数据内容格式。更进一步说,这HTTP大多也是HTTP/1.1,随着HTTP协议的发展HTTP/2, HTTP/3也已经出来了。别的, 数据格式也未必都是JSON, XML、Protobuf、Thrift, Avro等布局化格式都是可行的。gRPC使用的默认是HTTP/2+Protobuf,其特别之处重要在HTTP/2与HTTP/1.1的区别。
HTTP/1.1 HTTP/2 内容编码 文本编码 二进制编码, 类似信息比文本编码报文更短 网络哀求方式 在同一链接上,多个哀求依次发送和吸收 在同一毗连上,多个环境可以流水线发送 别的, HTTP/2还新增了header压缩和服务端push等特性。由此可见,gRPC依赖的HTTP/2与HTTP/1的有大相径庭的要求, 在实际使用中也要专门处置惩罚,此中有独立的HTTP/2干系的协议编解码,应用层的消息编解码等。不外,这些也都被gRPC框架给屏蔽了。关于gRPC自己的实现细节在此不做讨论,我们关注在与SpringBoot的集成。
二、粗暴方案
手动创建干系对象,袒露到Spring容器中。
原始的G
|