摘要: 1.将分布式锁升级为redisson实现自动续期 2.实现ZSET滑动窗口限流 3.加上gateway模块实现身份鉴权,令牌桶限流,路由转发 4.有状态token:将token写入redis然后登录时就不用将token存到前端 在登录后操作就可以查redis里有没有 这样删除redis里的key可以 阅读全文
posted @ 2026-06-10 22:20 千砂 阅读(2) 评论(0) 推荐(0)
摘要: 六月10日 @1.cache-aside模式先改DB在删redis 正常情况下可以保证数据一致性 1.A改DB 2.A删缓存 3.B读新数据同时更新缓存 但是还有一个问题就是当1完成了B就去读数据了拿到的还是脏数据但是这个窗口很小 兜底方案是redis canal去监听binlog异步兜底(这个也待 阅读全文
posted @ 2026-06-10 09:54 千砂 阅读(3) 评论(0) 推荐(0)
摘要: 今天主要处理了秒杀模块,我感觉这个模块有一点难可能还是我业务写得少但是捋顺后发现还是很简单的一条链 秒杀业务 1.初始化库存 这个很简单主要是操作redis 通过设置STOCK_KEY加上传进来的productId组成key value设置成传进来的库存数量 2.秒杀 主要是通过分布式锁来扣减库存 阅读全文
posted @ 2026-06-09 23:17 千砂 阅读(4) 评论(0) 推荐(0)
摘要: 今天主要把order模块完成了 捡主要的写今天我觉得比较重要的包括 1.远程调用还有远程调用的事务问题 2.事务传播机制 3.乐观锁 1.首先就是远程调用啊我用的是webclient正常分布式应该用的是OpenFeign 今天在写一个扣减库存业务时是通过远程调用的fetch方法还有update方法 阅读全文
posted @ 2026-06-08 22:17 千砂 阅读(3) 评论(0) 推荐(0)
摘要: 今天让claude code帮我出了一个项目来帮我串一下学到的内容 1.重写AQS的tryacquire还有tryrelease tryAcquire if(getsata()==0&&CAS(0,2)) { setsatta(1); setExclusiveOwnerThread(Thread.c 阅读全文
posted @ 2026-06-07 22:50 千砂 阅读(3) 评论(1) 推荐(0)
摘要: 今天主要学了分布式锁该怎么写 1.redis DefaultRedisScript script = new DefaultRedisScript<>(); script.setScriptSource(new ResourceScriptSource(new ClassPathResource(" 阅读全文
posted @ 2026-05-31 17:55 千砂 阅读(3) 评论(0) 推荐(0)