Redis
文章平均质量分 90
开心的小尾叭
这个作者很懒,什么都没留下…
展开
-
LoadingCache源码剖析之缓存加载实现
随着互联网的发展,数据量不断增长,用户对性能要求的不断提升,在开发项目中使用缓存已经是必不可少的一种手段了。我们会将一些很少或者较少变化,对及时性要求不高的数据存放在缓存中,以减少数据库的压力和负载。常用的缓存分为堆内缓存,堆外缓存,以及分布式缓存。而谈到堆内缓存,比较常用的就是Guava里提供的LoadingCache。本文中会从源码角度来分析LoadingCache中数据是如何被加载到缓存中,如何在多线程的场景下保证只有一个线程会去加载缓存数据。这一点在实际项目中是至关重要的,试想一下如果有100个线原创 2021-09-29 10:11:06 · 460 阅读 · 0 评论 -
redis游标删除
public static void hscandel(Jedis jedis,String bigkey){ // 分批删除 try { ScanParams scanParams = new ScanParams(); // 每次删除 500 条 scanParams.count(10000); String cursor = ""; while (!cursor.equals("0")){ Sca...原创 2020-05-18 14:12:08 · 554 阅读 · 0 评论 -
redis实现可重入锁
package com.jmdf.world;import redis.clients.jedis.Jedis;import java.util.HashMap;import java.util.Map;/** * redis实现可重入锁,借助ThreadLocal */public class RedisWithReentrantLock { private Threa...原创 2020-05-06 14:21:57 · 368 阅读 · 0 评论 -
redis中HLL的使用hyperloglog
redis中HLL的使用这里给出官方文档(中文翻译版)连接,里面关于时间复杂度、返回值、命令方式、使用案例等等都有详细说明本文对每个命令都简介总结并个人案例展示pfadd 添加影响基数估值则返回1否则返回0.若key不存在则创建时间复杂度O(1)127.0.0.1:6379> pfadd m1 1 2 3 4 1 2 3 2 2 2 2(integer) 1pfcount ...原创 2020-04-26 18:59:13 · 831 阅读 · 0 评论 -
JedisCluster 运用Pipeline技术 批处理插入数据
package redis;import java.util.HashSet;import java.util.List;import java.util.Map;import java.util.Set;import java.util.TreeMap;import redis.clients.jedis.HostAndPort;import redis.clients.jed...原创 2020-04-21 12:46:42 · 763 阅读 · 0 评论 -
redis各种数据结构在项目中的应用场景
购物车:hash:key:user:memberId:cartvalue:mapmap{key:skuid,value:cartItem}2:提交订单时防止重复提交:订单交易码Stringkey:user:memberId:tradeCodevalue:UUID3:list结构先限流再限制每个用户访问频率,从redis的list令牌中弹出,返回的token令牌不为空,则异...原创 2020-02-17 18:06:54 · 744 阅读 · 0 评论 -
Redisson实现分布式锁
1、引用redisson的pom<dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.5.0</version></dependency>2、定义...原创 2019-10-26 09:35:14 · 187 阅读 · 0 评论 -
Redis分布式锁
前言分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要确保锁的实现同时满足以下四个条件:互斥性。在任意时刻,只有一个客户端能持有锁。 不会发生死锁。即使有一个客户端在持有锁的期间崩溃而没有主动解锁,也能保证后续其他...原创 2019-10-13 11:36:25 · 110 阅读 · 0 评论