布隆过滤器的安装和应用
前提: 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 中运用
1 2 3 4 5 6 7 8 9 | $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 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!