Redis
文章平均质量分 89
Ja kar ta
伟大的渺小
展开
-
[Redis实战]分布式锁-redission
重入问题:重入问题就是指获得锁的线程可以再次进入到相同的锁的代码中,可重入锁的意义在于防止死锁。比如HashTable这样的代码中,他的方法都是使用synchronized修饰的,假如他在一个方法内,调用另一个方法,那么此时如果是不可重入的,不就死锁了吗?所以可重入锁他的主要意义是防止死锁,我们的synchronized和Lock锁都是可重入的。不可重试:是指目前的分布式只能尝试一次,我们认为合理的情况是:当线程在获得锁失败后,他应该再次尝试获得锁。超时释放。原创 2024-01-04 20:07:06 · 806 阅读 · 0 评论 -
[Redis实战]分布式锁
利用set nx ex 获取锁,并设置过期时间,保存线程标识释放锁时先判断标识是否与自己一致,一致则删除锁特性:利用set nx满足互斥性利用set ex保证故障时锁依然能释放,避免死锁,提高安全性利用Redis集群保证高可用和高并发特性。原创 2024-01-01 21:40:47 · 1343 阅读 · 0 评论 -
[Redis实战]优惠券秒杀
由于我们现在部署了多个tomcat,每个tomcat都有一个属于自己的jvm,那么假设在服务器A的tomcat内部有两个线程,这两个线程由于使用的是同一份代码,那么他们的锁对象是同一个,是可以实现互斥的,但是如果我们现在是服务器B的tomcat内部又有两个线程,但是他们的锁对象写的虽然和服务器A一样,但是锁对象却不是同一个,所以线程3和线程4可以实现互斥,但是却无法和线程1和线程2实现互斥,这就是集群环境,syn锁失效的原因,在这种情况下我们就需要使用分布式锁来解决这个问题。特价优惠券才需要填写这些信息。原创 2023-12-28 21:09:55 · 1007 阅读 · 0 评论 -
[Redis实战]商户查询缓存
缓存穿透产生的原因是什么?原创 2023-12-26 21:54:25 · 1035 阅读 · 0 评论 -
[Redis实战]短信登录
在这个方案中,确实可以使用对应路径的拦截,同时刷新登录token令牌的存活时间,但是现在这个拦截器他只是拦截需要被拦截的路径,假设当前用户访问了一些不需要拦截的路径,那么这个拦截器就不会生效,所以此时令牌刷新的动作实际上就不会执行,所以这个方案存在问题。原创 2023-12-19 20:57:37 · 844 阅读 · 0 评论 -
[Redis]基础入门
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有原创 2023-12-05 21:39:11 · 392 阅读 · 0 评论