一、简述
这几天补充了下文档,这里接《Spring Cloud终篇 | 总结 一:一个完整的企业级SpringCloud架构(Mybatis--多数据源)》之后,简述一下Redis二级缓存及feign的调用方式。
源码案例:https://github.com/liujun19921020/SpringCloudDemo/blob/master/ProjectDemo/企业SpringCloud架构-xxljob-redis-elasticsearch
或 :链接:https://pan.baidu.com/s/1ooqaIRSeX6naOZ51aBWNHA 提取码:cwsw
这里是整了一个架构集合案例,其中的ES/xxl-job将在下两章讲解,该文主要源码为sc-muster-item-demo项目
二、概述Feign调用
案例中,在sc-muster-item-demo项目中调用sc-item-demo项目中的"/orderProduct/updateOrderStatus"接口(pom.xml引包、添加注解等详细操作步骤可回顾下《Spring Cloud教程 | 第四篇:服务消费者(Feign调用)》等)
在sc-muster-item-demo项目中配置调用sc-item-demo项目的FeignClient,这里把熔断类也加上了,实际使用中可根据情况看是否需要。
/**
* 调用sc-item-demo服务
*/
@FeignClient(name = "sc-item-demo",fallback = ScItemDemoFeignHystrix.class)
public interface ScItemDemoFeignClient {
/**
* 根据 订单号(批量)/商品sku 修改订单状态
* @param data
* @return
*/
@PostMapping("/orderProduct/updateOrderStatus")
ResponseMsg updateOrderStatus(@RequestBody JSONObject data);
}
/**
* 调用sc-item-demo服务熔断类
*/
@Component
public class ScItemDemoFeignHystrix implements ScItemDemoFeignClient {
@Override
public ResponseMsg updateOrderStatus(JSONObject data) {
return null;
}
}
然后我们通过Service调用对应的FeignClient方法即可,如下,
@Service
public class OrderAmazonDetailServiceImpl implements I