高可用服务架构设计(12) - 基于request cache请求缓存技术优化批量商品数据查询接口
0 Github 回顾执行流程 1、创建command,2种command类型 2、执行command,4种执行方式 3、查找是否开启了request cache,是否有请求缓存,如果有缓存,直接取用缓存,返回结果 首先,reqeust context(请求上下文) 一般在一个web应用中,Hystrix会在一个filter里面,对每个请求都添加一个请求上下文 即Tomcat容器内,每一次请求,就是一次请求上下文 然后在这次请求上下文中,我们会去执行N多代码,调用N多依赖服务,有的依赖服务可能还会调用好几次 在一次请求上下文中,如果有多个command,参数及调用的接口也是一样的,其实结果也可以认为是一样的 那么就可以让第一次command执行返回的结果缓存在内存,然后这个请求上下文中,后续的其他对这个依赖的调用全部从内存中取用缓存结果即可 这样避免在