nacos 怎么配置不同命名空间的服务互相调用?

nacos 怎么配置不同命名空间的服务互相调用?

两个服务和 bootstrap.properities 配置文件如下:

  • coupon 服务
    # nacos server(nacos 服务端地址) 地址
    spring.cloud.nacos.server-addr=125.108.111.131:8848
    # nacos discovery server(nacos 服务注册/发现 服务端地址) 地址
    spring.cloud.nacos.discovery.server-addr=${spring.cloud.nacos.server-addr}
    # nacos discovery namespace(nacos 服务注册/发现 命名空间)
    spring.cloud.nacos.discovery.namespace=12b7ffb8-4e4f-41d7-a15a-0f54b104af34
    # 服务名称
    spring.application.name=gulimall-coupon
    spring.cloud.nacos.config.group=dev
    
  • member 服务
    # nacos server(nacos 服务端地址) 地址
    spring.cloud.nacos.server-addr=125.108.111.131:8848
    # nacos discovery server(nacos 服务注册/发现 服务端地址) 地址
    spring.cloud.nacos.discovery.server-addr=${spring.cloud.nacos.server-addr}
    # nacos discovery namespace(nacos 服务注册/发现 命名空间)
    spring.cloud.nacos.discovery.namespace=91291a93-cfec-4a6a-bed4-d9eedd6497b0
    # 服务名称
    spring.application.name=gulimall-member
    

member 服务调用 coupon 服务 client 编码如下:

@FeignClient("gulimall-coupon")
public interface CouponFeignService {

    @GetMapping("coupon/coupon/member/list")
    public R member();

}

因为我给两个服务配置了不同的服务命名空间,所以当 member 服务调用 coupon 服务时报以下错误:

com.netflix.client.ClientException: Load balancer does not have available server for client: coupon

这里有中解决方法,您可以看看:
https://blog.csdn.net/qq1309664161/article/details/128054626

img