码云地址:https://gitee.com/lpxs/lp-springcloud.git 有问题可以多沟通:136358344@qq.com。
上一章内容介绍了springboot2集成net.devh.grpc
本章介绍springboot2集成
Github 地址以及相关 DEMO 代码
<https: github.com chinasilence spring-boot-starter-grpc>
系统结构
facade:独立的 Maven 模块,依赖
spring-boot-starter-grpc
,需要远程调用的方法,都定义在此模块,形式可以为接口(interface) 或者抽象类(abstract class)server:服务提供方,依赖
facade
模块,需实现facade
模块定义的接口或者抽象类的抽象方法client:服务调用方,依赖
facade
模块,使用时,直接调用即可
优缺点分析
优点:
不需要编写probuff文件,以java api形式来定义接口
不依赖于eureka,完美适用于k8s
缺点:
- 只支持java,如果要支持异构语言需要使用springcloudsidecar 或者 手动注册到eureka
- eureka支持有限,不支持负载均衡