• 2024-09-21短视频全套源码,解决缓存击穿的常用方案
    短视频全套源码,解决缓存击穿的常用方案一、设置合理的过期时间固定过期时间:为短视频全套源码中的热点数据设置一个合理的固定过期时间,可以有效地减少数据库的访问频率,但不能完全避免缓存击穿问题。随机过期时间:通过为短视频全套源码中的缓存设置不同的随机过期时间,可以使缓
  • 2024-08-03Java通过redis实线多线程多用户操作时添加锁
    背景由于项目中多出涉及同步数据,同步过程就是从设备上查询数据,将数据库中该设备数据删除,将新数据导入到数据库;多次同步数据或多用户操作,会导致数据库出现重复数据,例如,两个线程同时删除设备数据,同时导入数据,就会出现双倍数据;还有线程1正在导入数据,中途线程2将线程1导入数据之前删
  • 2024-03-18springboot集成redis
    1.导入spring-boot-starter-data-redis起步依赖2.在配置文件中,配置redis连接信息3.调用API(StringRedisTemplate)完成字符串的存取操作```//把token存储在redis中ValueOperations<String,String>operations=stringRedisTemplate.opsForValue();operations.set(token
  • 2024-03-14Spring-Redis 使用
    基本类型:String存储数据:stringRedisTemplate.opsForValue().set("key","value");获取数据:Stringvalue=stringRedisTemplate.opsForValue().get("key");设置数据的过期时间(单位为秒):stringRedisTemplate.expire("key",60,Tim
  • 2023-12-0112.1日记
    令牌桶算法这里使用Redis实现令牌桶算法,令牌桶算法具体细节可参考其他博客,这里不赘述,大致就是在一个时间段内,存在一定数量的令牌,我们需要拿到令牌才可以继续操作。所以实现思路大致就是:   Redis中记录上次拿取令牌的时间,以及令牌数,每个手机号对应一个桶   每次拿令牌时
  • 2023-07-23Redis的使用
    1.Redis:客户端工具:jedis指令型工具,简单易用lettuceredis官方认可,opsForValue、opsForHashredission解决了分布式的各种问题比如锁redisdata官方推荐,封装了jedis、lettuce使用方式:1.引入包:<dependency><groupId>org.springframework
  • 2023-07-13RedisTemplate 的简单使用
    redisTemplate.opsForValue() 方法可以获得一个RedisString的操作类,通过该类可以执行一系列字符串类型数据的操作,例如获取、设置、删除数据等。//示例1:设置字符串类型的数据redisTemplate.opsForValue().set("key","value");//示例2:获取字符串类型的数据String
  • 2023-06-27redis-分布式锁注意事项
    lockKey:商品标识value:当前线程标识1.确保每把锁同一时间能且仅能上一次setnx(setifnotexists):当锁不存在时才上锁redisTemplate.opsForValue().setIfAbsent(lockKey,value)没加上锁需要返回错误码直接让其重试2.上锁成功后,需要在之后将锁释放redisTemplate.delete(l
  • 2023-06-26redis分布式锁实现
    @AutowiredprivateRedisTemplate<String,String>redisTemplate;//有死锁问题,设置锁的过期时间防止死锁publicvoidincr(){Booleanlock=redisTemplate.opsForValue().setIfAbsent("lock","1111"); //setnx,只有key不存在才能设置成功
  • 2023-06-14谈论关于Redis产生的分布式ID获取为空问题
    一:事故在项目测试中,遇到一个事件创建失败问题,追踪日志发现分布式ID的获取值为空,导致后续表写入异常。经排查锁定相关方法,具体方法经简化如下:@TransactionalpublicStringtestRedisTrans(){redisTemplate.setEnableTransactionSupport(t
  • 2023-02-06Redis详解
    Redis配置ymlspring:redis:host:82.157.248.243#host地址port:6379#地址端口号password:#密码database:
  • 2022-11-04项目中Redis的使用
    //从redis中获取疾病列表Objectredisdiseases=redisTemplate.opsForValue().get("diseases");if(redisdiseases!=null){logger.info("调用re
  • 2022-10-27redis使用实例
    //检查key是否存在,返回boolean值1.stringRedisTemplate.hasKey(Stringkey)//根据key获取缓存中value2.stringRedisTemplate.opsForValue().get(Objectkey)//截取key
  • 2022-08-28Redis 分布式锁
    概述单机架构下,一个进程中的多个线程竞争同一共享资源时,通常使用JVM级别的锁即可保证互斥,以对商品下单并扣库存为例:publicStringdeductStock(){synchronized