NoSQL

详解基于Redis 延时队列的优化方案

一、延时队列的应用 近期在开发部门的新项目,其中有个关键功能就是智能推送,即根据用户行为在特定的时间点向用户推送相应的提醒消息,比如以下业务场景: 在用户点击充值项后,半小时内未充值,向用户推送充值未完成提醒。 在用户最近一次阅读行为2小时后,向用户推送继...

Redis的数据存储及String类型的实现

Redis作为基于内存的非关系型的K-V数据库。因读写响应快速、原子操作、提供了多种数据类型String、List、Hash、Set、Sorted Set、在项目中有着广泛的使用,今天我们来探讨下下Redis的数据结构是如何实现的。 1 引言 Redis作...

redis lua限流算法实现示例

限流算法 常见的限流算法 计数器算法 漏桶算法 令牌桶算法 计数器算法   顾名思义,计数器算法是指在一定的时间窗口内允许的固定数量的请求.比如,2s内允许10个请求,30s内允许100个请求等等.如果设置的时间粒度越细,那么相对而言限...

Redisson如何解决Redis分布式锁提前释放问题

前言: 在分布式场景下,相信你或多或少需要使用分布式锁来访问临界资源,或者控制耗时操作的并发性。 当然,实现分布式锁的方案也比较多,比如数据库、redis、zk 等等。本文主要结合一个线上案例,讲解 redis 分布式锁的相关实现。 一、问题描述: 某天线...

redis中的bitmap你了解吗

1、BitMap是什么 通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身。我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省储存空间。2^32次方40亿数据只需要500M内存,需要内存少了8倍 2、setb...

浅谈Redis安全策略

Redis 提供了诸多安全策略,比如为了保证数据安全,提供了设置密码的功能。Redis 密码设置主要有两种方式:一种是使用CINFIG命令来设置密码;另外一种则是手动修改 Redis 的配置文件。虽然看似前者更为简单,其实两种方式各有特点。本节将对它们进行...

详解redis在微服务领域的贡献

前言 说到redis,可能大家的脑海中蹦出的关键词是:NoSQL、KV、高性能、缓存等。但今天的文章从另一个角度——微服务来展开。 这篇文章的起因也是源自一次面试经历,在面试一位来自陌陌的候选人(就是那个交友的陌陌)时,他提到一点让我觉得很有意思,他说re...

Redis BloomFilter实例讲解

1. 简介 2. guava 实现 2.1 导入依赖 2.2 BloomFilterTest 2.3 启动测试 2.4 小节 3. redisson 实现 3.1 导入依赖 3.2 BloomFilterWithRedisson 3.3 启动测试 1. 简...

redis 存储对象的方法对比分析

redis 存储对象的方法对比 问题背景: 原来项目里面全部是直接redis存储对象的json数据,需要频繁的序列化和反序列化,后来考虑更换项目中的redis存储对象为hash对象存储的,但是获取后不能方便的set get操作,很是蛋疼,怎么才能解决这个问...

了解Redis常见应用场景

一、String 场景 计数功能: 例如掘金文章点击数量,阅读数量。 集群环境下的session共享。 二、Hash 场景 各种 商城购物车 (淘宝,京东。。) 设计思路: 1.购物车绑定了 userId。 2.商品id作为feild,商品数量作为valu...