spring boot 2.x 使用cache的一点踩坑想法

最近项目中需要用到openfeign,即spring-cloud中的一个组件,前身为feign

由于某些配置参数会进行频繁请求,为了减轻api producer的压力,需要在方法上加一层cache

最初考虑使用ehcache3,但经测试发现存在一个比较麻烦的问题,ehcache3要求被缓存的目标需要实现

java.io.Serializable

这个目前已经比较少用(通常使用json)的序列化接口,同时作为spring cache使用时自定义相关的序列化方法比较复杂,经考虑后考虑使用其他的实现。

项目之前引入了swagger作为api文档,一并引入guava,就准备配置guava作为cache,发现spring boot 2.x即从spring 5.x开始已取消了对guava cache的支持,转而使用caffeine。

经了解,caffeine是一个拥有与guava cache几乎一致api的,性能更优越的框架,最终敲定使用caffeine作为缓存实现。

 

你可能感兴趣的:(Spring,Boot,/,Spring,Cloud,java)