Hystrix 是一个帮助解决分布式系统交互时超时处理和容错的类库, 它同样拥有保护系统的能力。Netflix的众多开源项目之一。
设计流程:

1.加入Redis依赖
<!--springboot整合redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2.配置Redis信息:
spring:
application:
name: order-service
redis:
database: 0
host: 127.0.0.1
port: 6379
timeout: 2000
3.
//注意:方法名称一定要与api方法一致
private Object saveOrderFail(Integer userId,Integer productId){
String saveOrderKey = "save-order";
String sendValue = (String) redisTemplate.opsForValue().get(saveOrderKey);
new Thread( () ->{
if (StringUtils.isBlank(sendValue)){
//发送一个http请求,请求短信服务
redisTemplate.opsForValue().set(saveOrderKey,"save-order-fail",20, TimeUnit.SECONDS);
}
}).start();
Map<String, Object> msg= new HashMap<>();
msg.put("code",-1);
msg.put("msg","抢购人数太多,请稍后再试");
return msg;
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持天达云。