TypechoJoeTheme

Clover 的博客

统计
登录
用户名
密码
/
注册
用户名
邮箱

CloverYou

日出于东却落于西,相识人海却散于席。
2022-01-07

SpringCache

SpringCache
Spring Cache官方文档 https://docs.spring.io/spring-framework/docs/current/reference/html/integration.html#cacheSpring 从3.1开始定义了 org.springframework.cache.Cache 和 org.springframework.cache.CacheManager 接口来统一不同的缓存技术并支持使用 JCache(JSR-107)注解简化我们开发。Cache 接口为缓存的组件规范定义,包含缓存的各种操作集合。Cache 接口下 Spring 提供了各种 xxxCache 的实现,如 RedisCache,EhCacheCache,ConcurrentMapCache 等。每次调用需要缓存功能的方法时,Spring 会检查指定参数的指定目标方法是否已经被调用过,如果有就直接从缓存中获取方法调用后的结果,如果没有就调用方法并缓存结果后返回给用户,下次调用直接从缓存中获取。使用 Spring 缓存抽象时我们需要关注以下两点确定方法需要被缓存以及他们的缓存策略。...
CloverYou
2022-01-07

Spring,JAVA

39 阅读
0 评论
2022年01月07日
39 阅读
0 评论
2022-01-06

缓存数据的一致性

缓存数据的一致性
缓存数据的一致性读所有的数据,首先去缓存中获取,缓存中没有就去读数据库,最后在缓存中放一份。如果该数据在数据库中发生改变,那么缓存里面的数据如何和数据库保持一致?解决这个问题,目前有两个用的非常多的场景:双写模式失效模式双写模式修改数据库的数据后再修改缓存中的数据但又引出了一个问题,那就是当有并发时,线程一将数据库的值改为「一号」然后立刻将这个值保存到缓存,而保存过程中遇到了种种原因,如网络波动,导致了数据延迟抵达缓存服务器,而此时线程二已经将数据库数据改为「二号」然后将数据保存到缓存,线程二网络通畅,很快就抵达缓存服务器先于线程一将数据保存到缓存中,而此时线程一的数据才抵达缓存服务器,将数据「一号」保存到了缓存中(把二号覆盖),这时缓存中保存的就是一个脏数据。这是临时性的脏数据问题,但是在数据稳定、缓存过期后,又能得到最新的正确数据。读到的最新数据有延迟,这就导致了数据的最终一致性问题。失效模式在改完数据库后,将缓存中的数据删除,下一次请求进来从缓存获取数据时发现没有对应数据,他会到数据库中查询并将数据保存在缓存中。失效模式也有数据最终一致性问题,例如有三台服务器同时并发,服务...
CloverYou
2022-01-06

JAVA,其它

78 阅读
1 评论
2022年01月06日
78 阅读
1 评论
2022-01-04

Redisson 配置附带官方关于锁的文档

Redisson 配置附带官方关于锁的文档
Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, CountDownLatch, Publish / Subscribe, Bloom filter, Remote service, Spring cache, Executor service, Live Object service, Scheduler service) Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离(Separation of Concern),从而让使用者能够将精力更集中地放在处理业务逻辑上。初始化引入 Redisson 原生依赖。该依赖提供了分布式锁、分布式对象...
CloverYou
2022-01-04

随笔

63 阅读
0 评论
2022年01月04日
63 阅读
0 评论
2022-01-04

Redis 缓存

Redis 缓存
缓存为了系统性能的提升,一般会将部分数据加入缓存中,加速访问。而 db 承担数据落盘工作。哪些数据适合放入缓存?即时性、数据一致性要求不高的访问量大而且更新频率不高的数据(读多,写少)整合Redis在 SpringBoot 工程中引入 Redis 场景<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>在配置文件中配置 Redis,Redis 的属性配置都在 org.springframework.boot.autoconfigure.data.redis.RedisPropertiesspring: # 配置 redis redis: host: 172.16.34.128使用 StringRedisTemplate 操作 redis@SpringBootTest @Slf4j @Dis...
CloverYou
2022-01-04

JAVA,其它

56 阅读
0 评论
2022年01月04日
56 阅读
0 评论
2022-01-02

Tomcat 安装

Tomcat 安装
Tomcat到官网下载 tomcat下载完成解压后,将该文件夹命名为 Tomcat,移动到资源库(/Library)打开终端转到 Tomcat /bin 路径,给所有 .sh 文件755权限。sudo chmod 755 *.sh启动 tomcat,输入 sudo sh ./startup.sh 后回车:sudo sh ./startup.shtomcat 启动后打开浏览器,输入localhost:8080如果启动失败请检查8080端口是否被占用,如果已经被占用需要将8080杀死。关闭Tomcat,用终端输入sh ./shutdown.sh
CloverYou
2022-01-02

随笔

50 阅读
0 评论
2022年01月02日
50 阅读
0 评论
CloverYou
日出于东却落于西,相识人海却散于席。
88 文章数
11 评论量
IP信息

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

最新回复

  1. 缓存一致性 - 点击领取
    2022-01-06
  2. 宝宝
    2022-01-02

标签云