【无标题】微服务间的远程调用

远程调用:

一、先在所有微服务的yml文件里加以下配置,即可把服务放入注册中心



 cloud:
    #有nacos配置中心就必须写微服务名称 application:name: XXX
    nacos:
      server-addr: localhost:8848

二、
在A服务写A方法
在B服务 1.启动类加@EnableFeignClients   作用:扫描@FeignClient
             2.写远程调用接口加@FeignClient(value="A服务注册中心的名字")    作用:得到A服务的                   ip 和端口号
            3.写接口方法 用@xxMapping(x/x/x/x/)标明A方法的资源全路径
               实际开发直接粘贴A方法除方法体外的所有部分,再修改mapping注解的资源全路径即可  三、
以后B服务的哪个类需要用到A方法 就用@Autowired装配一下B服务的接口 然后接口.接口方法即可

四、如果这个远程调用接口想启用熔断降级快速响应失败?

   1.在yml文件加此配置

 #启用feign远程调用对sentinel熔断降级的支持
feign:
  sentinel:
    enabled: true

   2.还需要在@FeignClient注解指定熔断降级的类 

 //根据core在注册中心的微服务名可以得到ip+端口号
 //fallback 指定熔断降级的类
@FeignClient(value = "service-core",fallback = CoreClientFallback.class)
public interface CoreClient {
    @ApiOperation("发送短信前判断手机号是否已被注册")
    @GetMapping("/api/core/userInfo/isUsed/{mobile}")  //拼接远程方法的全路径
    public ResponseVo isUsed(@PathVariable String mobile);
}

 3.熔断类实现远程调用接口

@Service
public class CoreClientFallback implements CoreClient 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值