1、概述 在JMM规范下,如果一个操作执行的结果需要对另一个操作可见,那么这两个操作之间必须存在happers-before(先行发生)原则。 例如 int x ...
string 字符串 redis的字符串是动态字符串,可以修改,底层是类似于Java的arrayList 。包含capacity (容量长度)和len(实际字符长度)。 当长度大...
记录:403 场景:在Spring Boot微服务使用RedisTemplate的HashOperations操作Redis Hash哈希散列。 版本:JDK 1.8,Spring Boot 2.6.3,red...
JMM通过内存屏障来实现内存的可⻅性以及禁⽌重排序。 为了程序员的⽅便理解,提出了happens-before,它更加的简单易懂,从⽽ 避免了程序...
记录:405 场景:在Spring Boot微服务使用RedisTemplate的ZSetOperations操作Redis Zset(有序集合)。 版本:JDK 1.8,Spring Boot 2.6.3,r...
记录:402 场景:在Spring Boot微服务使用RedisTemplate的ListOperations操作Redis List列表。 版本:JDK 1.8,Spring Boot 2.6.3,redis-6...
非乐观锁场景时序图: 乐观锁场景示意图: 假设有一个账户余额表 user_balance,其中有两个字段:user_id 和 balance,分...
为什么要使用Redis事务: 原子性:事务内的所有操作要么全部执行成功,要么全部失败回滚,保证数据的一致性。 隔离性:事务...