1.安裝好了redis之後,我們就可以開始在linux操作redis了。
啟動停止redis
在redis bin目錄下面 :
./redis-server …/redis.conf
./redis-cli shutdown
後台程序啟動的話:
我們可以通過先開啟服務之後
通過 ./redis-cli 連線
如果連線遠端的redis服務 可以通過:
./redis-cli -h 192.168.1.4 -p 6379(6379是redis對外開放的訪問埠)
但是我們通過這個方法卻連線不上,我們可以先通過:
./redis-cli -h 127.0.0.1 -p 6379 的方式來連線。上面那個問題之後記錄其他內容的時候再補充。
2.redis的資料庫:
可以通過redis.conf的配置看到 預設有16個資料庫;預設使用的是 db 0。可以通過 select 命令切換資料庫.可以理解為乙個命名空間。跟關係型資料庫有一點不一樣:
1、redis不支援自定義資料庫名詞
2、每個資料庫不能單獨設定授權
3、每個資料庫之間並不算完全隔離的。可以通過flushall命令清空redis例項面的所有資料庫的資料。
三、對於redis的命令操作
1.獲得乙個符合匹配規則的鍵名列表
keys pattern
查詢所有符合給定模式 pattern 的 key 。
? 匹配乙個字元
* 匹配任意個(包括0個)字元
匹配括號間的任乙個字元,可以使用 「-」 符號表示乙個範圍,如 a[b-d] 可以匹配 「ab」,「ac」,「ad」
\x 匹配字元x,用於轉義符號,如果要匹配 「?」 就需要使用 ?
keys 的速度非常快,但在乙個大的資料庫中使用它仍然可能造成效能問題,如果你需要從乙個資料集中查詢特定的 key ,你最好還是用 redis 的集合結構(set)來代替。
keys模糊匹配,請大家在實際運用的時候忽略掉。因為keys會引發redis鎖,並且增加redis的cpu占用,情況是很惡劣的
如果有這種需求的話可以自己對鍵值做索引,比如把各種鍵值存到不同的set裡面,分類建立索引,這樣就可以很快的得到資料,但是這樣也存在乙個明顯的缺點,就是浪費寶貴的空間,要知道這可是記憶體空間啊,所以還是要合理考慮,當然也可以想辦法,比如對於有規律的鍵值,可以儲存他們的始末值等等。
使用redis的時候要注意很多細節,雖然redis只提供了五種型別,但是用起來不一定就只有五種,比如string型別,你可以儲存任何你自己定義的型別,所以思想不能侷限,靈活的設定資料結構。還有就是雖然redis訪問很快,但是正常生產環境,redis伺服器肯定和web伺服器不是在一起,有時候甚至是在不同的地區,所以網路通訊延遲就很重要了,所以要減少訪問次數,一次訪問完成更多的工作,否則你會發現做同樣的事redis還沒有關係型資料庫快,所以redis存的時候一定要有技巧,盡可能減少訪問次數。
5、有序集合
zadd key score member [score member]..... 增加元素 score 是分數 決定順序
zrange key start stop 獲得某一段元素 根據分數公升序
zrange key start stop withscores 獲得元素和分數
Springboot之redis快取(二)
基於centos7的虛擬機器中,可以用阿里雲映象加速 docker pull mirror.aliyuncs.com library redis 根據自己註冊阿里雲的賬號而不同。阿里雲登入 進去找容器映象服務 安裝好後執行redis,將虛擬機器埠對映到docker埠 docker run d p 6...
Redis快取設計之快取穿透 快取雪崩
提高系統響應速度,加速讀寫,redis將數全都存放在記憶體中,響應速度更快。降低了後台的負載,減少了對後端的直接訪問 資料一致性問題,快取層的資料與儲存層的資料可能存在不一致的問題 維護複雜度高了,加入快取後要同時處理快取曾和持久層的 邏輯 快取穿透就是指查詢乙個根本不存在的資料,導致很多請求直接穿...
Redis學習 二 之Redis簡單命令操作
一 伺服器端簡單操作 啟動linux時自啟動redis 將redis.conf檔案中的daemonize yes。啟動redis伺服器端 redis server usr software redis etc redis.conf。二 客戶端簡單操作 1 redis兩種啟動啟動方式 帶引數方式啟動 ...