一,负载均衡:

  feign已经集成了ribbon,将service1,service2在不同端口启动多个实例可以自动负载均衡

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

  idea:

    application.yml中server.port: ${port:8080}

    edit configure -> vm options中 -Dport=8080,复制多个启动配置,修改端口,启动最终的配置来实现同一应用在不同端口启动

二,服务降级

  1,引入sentinel依赖

     <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
        </dependency>

  2,开启feign的sentinel配置

feign:
  sentinel:
    enabled: true

  3,创建fallback类,实现对应的client接口

@Component
public class UserClientFallback implements UserClient {
    public String getName() {
        return "fallback, 默认姓名";
    }

    public String getAddress() {
        return "fallback, 默认地址";
    }
}

  4,指定fallback类

@FeignClient(value = "service1", fallback = UserClientFallback.class)

注:可以通过nacos注册中心的实例上下线功能来模拟服务降级事件

  

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄