记录使用JetCache遇到的问题

/ Java / 没有评论 / 1161浏览

记录使用JetCache遇到的问题

简介 JetCache是一个基于Java的缓存系统封装,提供统一的API和注解来简化缓存的使用。 JetCache提供了比SpringCache更增强大的注解,能够原生的支持TTL、两级缓存、分布式自动刷新,还提供了Cache接口用于手工缓存操做。 当前有四个实现,RedisCache、TairCache(此部分未在github开源)、CaffeineCache(in memory)和一个简易的LinkedHashMapCache(in memory),要添加新的实现也是很是简单的。 所有特性:java

阿里开源地址:https://github.com/alibaba/jetcache/wiki/Home_CN

遇到的问题

这里就详细说使用过程了,搭建过程就参考GitHubAPI,或者直接拉GitHub代码能够直接跑。github

问题1:

com.alicp.jetcache.CacheConfigException: no remote cache builder: default remote是JetCache链接远程Redis 这个异常是链接你的远程Redis失败, 主要是配置问题。 配置出错会致使它装配本地缓存和远程缓存失败

官方给出的配置:

jetcache:
  statIntervalMinutes: 1
  areaInCacheName: false
  local:
    default:
      type: linkedhashmap
      keyConvertor: fastjson
  remote:
    default:
      type: redis
      keyConvertor: fastjson
      valueEncoder: java
      valueDecoder: java
      poolConfig:
        minIdle: 5
        maxIdle: 20
        maxTotal: 50
      host: 127.0.0.1
      port: 6379
      password: ***

问题2

java.lang.ClassNotFoundException: redis.clients.jedis.util.Pool 这个类是jedis包下的,我引入jetcache版本2.5.11,jedis版本2.9.0。 jetcache与jedis是会有版本问题的,查看了文档介绍和Issues才发现的问题. 最后换成:

<dependency>
    <groupId>com.alicp.jetcache</groupId>
    <artifactId>jetcache-starter-redis</artifactId>
    <version>2.6.0</version>
</dependency>
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>3.3.0</version>
</dependency>
</dependencies>

我是把包都换成最新的了,而后没有报错Pool类找不到了。web

结束语

百度上关于JetCache的报错、配置详解的资料挺少的,我我的的话回去jetcache的GitHub–issues去找一些问题。好啦! 这是本人的第一篇博客,也是正在学习的小白白,若有不足或者错误还请你们指正!!!re