
cd /usr/local/src wget https://github.com/RedisBloom/RedisBloom/archive/master.zip #下載完成后,如果沒有unzip,需要先安裝unzip #yum install unzip unzip master.zip #解壓完成后會出現一個RedisBloom-master的文件夾,進去 cd RedisBloom-master #執行make命令需要gcc編譯器,沒有的需要先安裝 yum install gcc make #make執行成功后會有一個redisbloom.so擴展庫 #我安裝redis的時候,make install的目錄為/opt/redis6,所以我的redis命令都在/opt/redis6/bin目錄下,我把這個擴展庫復制到/opt/redis6目錄下,方便使用 cp redisbloom.so /opt/redis6
重新啟動redis
/opt/redis6/bin/redis-server --loadmodule ./redisbloom.so
布隆過濾器是干啥的?
可以防止緩存穿透:
假如系統中有大量的商品數據,搜索時,不可能直接查詢數據庫,這時候,可以把商品的關鍵字(名稱或者id)根據某些映射元素映射到bitmap中,這樣,所有的商品關鍵字就存在了redis中,當搜索時,同樣使用映射函數查詢映射的結果是否在bitmap中被標記了,如果被標記了,就說明很大的概率是由該商品的。
布隆過濾是概率解決問題的,不可能百分百的阻擋,會大量減少放行,而且成本低。
參考資料:https://www.jianshu.com/p/2104d11ee0a2
