上一节是简单介绍了gRPC自带的负载均衡功能,简单总结,需要实现自定义的nameRelover解析成iP地址,再使用gRPC内置的负载均衡策略进行负载均衡。
可以发现,其中有两个问题:
1、nameRelover里面我们写死了ip地址
2、gRPC自带的负载均衡策略太过于单薄,可能不满足我们在生产环境中的使用。
接下来我们来讲解如何解决这两个问题。
解决这个问题,如果有一些微服务治理的知识的话,大家应该立刻会想到使用dubbo、springCloud等rpc框架常用的引入第三方中间件的方式,例如现在大火的etcd和老牌的zookeeper等。这种方式当然没有问题,但是gRPC官方是不推荐的,这一点后面再说。我们先把这种方式给大家简单介绍一下。
nacos介绍
服务端注册nacos
客户端获取nacos数据并监听