Redis

聊一聊Redis的离线分析

背景 Redis 或许是我们大部分场景都会用到的一个利器,虽然是利器,用的姿势不对的话,终究还是会整出幺蛾子的。 比较常见的问题,不外乎内存暴增,慢查询等情况。 那么对于内存问题,可以借助redis自带的bigkey分析,也可以借助一些第三方工具来进行离线分析,如 redis-rdb-tools 和 ... »

共读《redis设计与实现》-单机(一)

上一章我们讲了 redis 基本类型的数据结构 和 对象系统 ,这篇来说一下单机redis 的知识点。 一、数据库 一个数据库在redis中就有一个结构体,而数据库的结构体是由redisServer这个结构体持有。 也就是redis服务器对应一个redisService 结构体,一个redisSer ... »

基于 Redis 分布式锁

1、主流分布式锁实现方案 基于数据库实现分布式锁 基于缓存(redis 等) 基于 Zookeeper 2、根据实现方式分类 : 类 CAS 自旋式分布式锁:询问的方式,类似 java 并发编程中的线程获询问的方式尝试加锁,如 mysql、redis。 event 事件类型分布式锁: event 事 ... »

wen0223 redis

共读《redis设计与实现》-数据结构篇

准备将之前攒下的书先看一遍,主要是有个大概的了解,以后用的时候也知道在哪里找。所以准备开几篇共读的帖子,激励自己多看一些书。 Redis 基于 简单动态字符串(SDS)、双端链表、字典、压缩列表、整数集合等基础的数据结构,创建了一个对象系统,这个对象系统包含:字符串对象(String)、列表对象(L ... »

缓存中间件-Redis(二)

在上一篇中我们简单总结和介绍了Redis的几个方面 1.使用Redis背景 2.Redis通信多路复用的基本原理 3.Redis基本数据结构 4.Redis持久化方式 这一篇我们使用简单的业务场景来介绍Redis的分布式锁和集群 1.分布式锁 首先我们应该知道什么是分布式锁,用来做什么的,解决了什么 ... »

yuxl01 .NET

SpringCloud微服务实战——搭建企业级开发框架(三十九):使用Redis分布式锁(Redisson)+自定义注解+AOP实现微服务重复请求控制

通常我们可以在前端通过防抖和节流来解决短时间内请求重复提交的问题,如果因网络问题、Nginx重试机制、微服务Feign重试机制或者用户故意绕过前端防抖和节流设置,直接频繁发起请求,都会导致系统防重请求失败,甚至导致后台产生多条重复记录,此时我们需要考虑在后台增加防重设置。 考虑到微服务分布式的场景, ... »

FullStackProgrammer

Redis HyperLogLog 是什么?这些场景使用它,让我枪出如龙,一笑破苍穹

在移动互联网的业务场景中,数据量很大,我们需要保存这样的信息:一个 key 关联了一个数据集合,同时对这个数据集合做统计。 比如: 统计一个 APP 的日活、月活数; 统计一个页面的每天被多少个不同账户访问量(Unique Visitor,UV)); 统计用户每天搜索不同词条的个数; 统计注册 IP ... »

uniqueDong

python 包之 redis 数据库操作教程

一、安装 redis 是一个 Key-Value 数据库 Value 支持 string(字符串),list(列表),set(集合),zset(有序集合),hash(哈希类型)等类型 pip install redis 二、连接 import redis # 方式一 r = redis.Strict ... »

缓存中间件-Redis(一)

1.Redis介绍 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的 key-value 存储系统,是跨平台的非关系型数据库,Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可 ... »

yuxl01 .NET

硬核 | Redis 布隆(Bloom Filter)过滤器原理与实战

在Redis 缓存击穿(失效)、缓存穿透、缓存雪崩怎么解决?中我们说到可以使用布隆过滤器避免「缓存穿透」。 码哥,布隆过滤器还能在哪些场景使用呀? 比如我们使用「码哥跳动」开发的「明日头条」APP 看新闻,如何做到每次推荐给该用户的内容不会重复,过滤已经看过的内容呢? 你会说我们只要记录了每个用户看 ... »

uniqueDong

编译实战 | 手摸手教你在Windows环境下运行Redis6.x

原创:微信公众号 码农参上,欢迎分享,转载请保留出处。 哈喽大家好啊,我是没事就愿意瞎捣鼓的Hydra。 不知道有没有小伙伴像我一样,平常开发中用的是windows操作系统,有时候想装点什么软件,一看只支持linux系统,无奈要么启动虚拟机、要么装在云服务器上。 这不前几天又是这样,刚想用一下Red ... »

Redis 缓存击穿(失效)、缓存穿透、缓存雪崩怎么解决?

原始数据存储在 DB 中(如 MySQL、Hbase 等),但 DB 的读写性能低、延迟高。 比如 MySQL 在 4 核 8G 上的 TPS = 5000,QPS = 10000 左右,读写平均耗时 10~100 ms。 用 Redis 作为缓存系统正好可以弥补 DB 的不足,「码哥」在自己的 M ... »

uniqueDong

Rb(redis blaster),一个为 redis 实现 non-replicated 分片的 python 库

Rb,redis blaster,是一个为 redis 实现非复制分片(non-replicated sharding)的库。它在 python redis 之上实现了一个自定义路由系统,允许您自动定位不同的服务器,而无需手动将请求路由到各个节点。 它没有实现 redis 的所有功能,也没有尝试这样 ... »

hacker-linner

基于Spring接口,集成Caffeine+Redis两级缓存

原创:微信公众号 码农参上,欢迎分享,转载请保留出处。 在上一篇文章Redis+Caffeine两级缓存,让访问速度纵享丝滑中,我们介绍了3种整合Caffeine和Redis作为两级缓存使用的方法,虽然说能够实现功能,但实现手法还是太粗糙了,并且遗留了一些问题没有处理。本文将在上一篇的基础上,围绕两 ... »

redis笔记补充

redis补充 这篇文章是redis入门笔记的补充。 1.info命令 用来显示服务的信息。 info命令可以跟下面的选项: server: 关于 Redis 服务器的一些信息 clients: 客户端连接部分 memory: 内存消耗相关信息 persistence: RDB和AOF相关信息 st ... »

wbo112

redis从0-1学习记录(完结)

1、 NoSQL(not only sql):不仅仅是数据库,非关系型数据库,关系型数据库是以表格的行列进行存储的,而非关系型数据库是以键值对进行存储,不需要固定的格式。非关系型数据库的特点,方便扩展、大数据量、高性能、细粒度缓存、数据类型多样化(也不需要设计数据库表)。有redis(远程字典服务) ... »

Redis分布式实现原理

一、使用 1、pom.xml导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-integration</artifactId> </dependency> <de ... »