Redis布隆过滤器插件安装 介绍 在成百上千万的数据中,判断某个数据是否存在时,使用hash、rbt等都会占用非常多的内存资源,这时候使用,可以节省非常多的内存。
下载布隆过滤器插件 gitHub下载最新版本
1 wget https://github.com/RedisBloom/RedisBloom/archive/v2.0.0.tar.gz
编译安装 解压并安装,生成.so文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 sudo cp RedisBloom-2.0.0.tar.gz /usr/local /redis-5.0.5/modlues/ cd /usr/local /redis-5.0.5/modlues/sudo tar -zxvf RedisBloom-2.0.0.tar.gz cd RedisBloom-2.0.0/make ll 总用量 336 drwxrwxr-x. 2 root root 99 7月 21 16:52 contrib -rw-rw-r--. 1 root root 405 6月 25 16:54 Dockerfile drwxrwxr-x. 3 root root 241 6月 25 16:54 docs -rw-rw-r--. 1 root root 5794 6月 25 16:54 LICENSE -rw-rw-r--. 1 root root 2608 6月 25 16:54 Makefile -rw-rw-r--. 1 root root 946 6月 25 16:54 mkdocs.yml -rw-rw-r--. 1 root root 511 6月 25 16:54 ramp.yml -rw-rw-r--. 1 root root 2467 6月 25 16:54 README.md -rwxr-xr-x. 1 root root 308952 7月 21 16:52 redisbloom.so drwxrwxr-x. 2 root root 48 7月 21 16:52 rmutil drwxrwxr-x. 2 root root 4096 7月 21 16:52 src drwxrwxr-x. 2 root root 217 6月 25 16:54 tests
安装 在redis配置文件(redis.conf)中加入该模块即可
1 2 3 4 5 6 7 8 cd /usr/local /redis-5.0.5/sudo vim conf/redis-6379.conf loadmodule /usr/local /redis-5.0.5/modlues/RedisBloom-2.0.0/redisbloom.so
启动 正常的启动Redis即可
1 sudo src/redis-server conf/redis-6379.conf
测试 1 2 3 4 5 6 7 8 9 10 redis-cli 127.0.0.1:6379> bf.add bloom user2 (integer ) 1 127.0.0.1:6379> bf.exists bloom user2 (integer ) 1 127.0.0.1:6379> bf.exists bloom user3 (integer ) 0
限流插件Redis-cell 介绍 限制用户在指定时间内只可以访问一定次数。
下载 去官网下载最新版本Redis-cell
编译安装 1 2 解压 $ tar -zxf redis-cell-*.tar.gz
分布式锁 介绍 受保护的公共资源,需要协调。多个服务节点请求更新同一个库存数,数据库压力,如何转移压力。,需要一把分布式锁。缓存Key,失效以后,多个请求更新,只需要一个请求更新就可以了,需要一把分布式锁。
原子问题 Redis 实现锁 Redis2.8前,setNx + expire , set ex nx这是两个命令,两个命令间存在原子操作的问题 Redis2.8以后,set ex nx
1 2 3 4 set lock true ex 5 nxOK ... do something critical ... del lock