前提: redis版本必须大于4.0,centos7 yum 安装的redis版本3.0.7不支持!
首先编译安装redis
1.wget http://download.redis.io/releases/redis-4.0.2.tar.gz
2.mkdir /usr/redis
3.tar -zxvf -C /usr/redis
4.cd redis-4.0.2/
5.make && make install
6.安装完成
7.设置开机启动,vim /usr/lib/systemd/system/redis.service,粘贴如下文件内容:
#文件内容
[Unit]
Description=Redis Server
After=network.target
[Service]
ExecStart=/usr/redis/redis-4.0.2/src/redis-server /usr/redis/redis-4.0.2/redis.conf --daemonize no
ExecStop=/usr/redis/redis-4.0.2/src/redis-cli -p 6379 shutdown
Restart=always
[Install]
WantedBy=multi-user.target
8.systemctl enable redis 设置开机启动
9.创建软连接,方便进入命令行
ln -s /usr/redis/redis-4.0.2/src/redis-cli /usr/bin/redis-cli
10.重启redis systemctl restart redis
接下来安装布隆过滤器
1.wget https://github.com/RedisBloom/RedisBloom/archive/v2.2.1.tar.gz
2.tar -zxvf v2.2.1.tar.gz
3.cd RedisBloom-2.2.1/
4.make 编译
ls -all 可以看到布隆扩展:
5.记住redisbloom.so路径 vim /usr/redis/redis-4.0.2/redis.conf,引入该模块
6.重启redis --- systemctl restart redis
7.测试布隆过滤器
# 设置错误率 和 存储元素个数, 当key存在时不可设置 bf.reserve key 0.01 10000 #0.01表示错误率,10000表示元素个数
上面例子表示向language添加元素,然后判断是否存在,存在返回1,不存在返回0
8.php 中运用
$redis = new Redis(); $redis->connect('43.139.211.158',6379); //添加单个元素 $redis->rawCommand('bf.add','test','one'); //批量添加元素 $redis->rawCommand('bf.add','test','one','two','three','four','five'); $res = $redis->rawCommand('bf.exists','test','one'); var_dump($res); //output: 1
标签:bf,4.0,tar,redis,布隆,usr,过滤器,安装 From: https://www.cnblogs.com/wujf-myblog/p/17722492.html