CACHE 的使用以及比较

17 篇文章 0 订阅
13 篇文章 0 订阅

好记忆不如烂笔头,能记下点什么,就记下点什么,方便后期的查看.

一、缓存使用的层级

通过下图,来分析一下各个层级使用缓存的情况:

当然,要是使用数据库的缓存,这个就不做过多介绍,一般是使用mybatis 的一,二级缓存实现db缓存。

二、缓存的分类

通过下图可以看到缓存的分类情况概况:

三、各种缓存的性能对比

主要看看 本地缓存框架 和 远程缓存框架 的性能对比,本地缓存主要集中在:gauva, caffeine ,ehcache 等;远程缓存主要是:redis,memcached 等

四、缓存在企业中的使用场景

缓存在企业中的使用场景如下图所示:

本地缓存一般是gauva ,caffeine 或者 hashmap ,而二级缓存主要会选择如:redis .

五、本地缓存性能比较

本地缓存使用频率还是蛮高的,那么他们性能到底怎么样,这里给一个结果图

六、远程缓存(二级缓存)性能对比

二级缓存,主要是redis 和memcached ,看看他们的性能对比:

由此上几种对比,让我们对缓存有了一个直观的认知,有一个客观的理解。

未来新的知识,再往上添加上去 . 

 

JetCache 是一个基于 Java 的开源缓存库,它提供了对方法级缓存的支持。使用 JetCache 可以方便地将方法的结果缓存起来,提高应用程序的性能和响应速度。 下面是使用 JetCache 的基本步骤: 1. 添加 JetCache 依赖:将 JetCache 的依赖项添加到项目的构建文件中(如 Maven 或 Gradle)。 2. 配置缓存:在应用程序的配置文件中,配置需要使用的缓存类型和相关属性。例如,可以配置内存缓存、Redis 缓存等。 3. 注解方法:在需要进行缓存的方法上添加 JetCache 的注解,如 `@Cached`、`@CacheRemove` 等。这些注解可以指定缓存的 key、过期时间、条件等。 4. 使用缓存:在调用被注解的方法时,JetCache 会根据注解的配置自动处理缓存。如果缓存中存在所需数据,则直接返回缓存数据;否则,执行方法并将结果放入缓存。 下面是一个简单的示例: ```java import io.github.jiashunx.cache.Cache; import io.github.jiashunx.cache.annotation.Cached; public class MyService { private Cache<String, String> cache; // 构造函数或依赖注入注入 Cache 实例 @Cached(name = "myCache", key = "#param", expire = 600) public String getData(String param) { // 从数据库或其他数据源中获取数据 // ... return data; } } ``` 在上述示例中,`MyService` 使用了 JetCache 的 `@Cached` 注解对 `getData` 方法进行了缓存配置。缓存的名称为 "myCache",缓存的 key 使用方法参数 `param`,缓存的过期时间为 600 秒。当调用 `getData` 方法时,JetCache 会自动处理缓存逻辑,如果缓存中存在对应的数据,则直接返回缓存数据;否则,执行方法并将结果放入缓存。 这只是 JetCache 的基本用法,JetCache 还提供了其他更复杂的缓存策略和配置选项,可以根据具体需求进行配置和使用。 希望这个回答对您有帮助!如有更多问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值