Redis簡介
已經有了Membercache和各種資料庫,Redis為什麼會產生? Redis純粹為應用而產生,它是一個高效能的key-value資料庫。 redis的出現,很大程度補償了memcached這類keyvalue儲存的不足,解決了斷電後資料完全遺失的情況;在部分場合可以對關聯式資料庫起到很好的補充作用。效能測試結果表示SET操作每秒鐘可達110000次,GET操作每秒81000次(當然不同的伺服器配置效能不同)。
Redis是一種面向「鍵/值」對類型資料的分散式NoSQL資料庫系統,特點是高效能,持久存儲,適應高並發的應用場景。 和Memcached類似,它支援儲存的value類型相對更多,包括string(字串)、list(鍊錶)、set(集合)和zset(有序集合)。 這些資料類型支援push/pop、add/remove及取交集並集和差集及更豐富的操作,而且這些操作都是原子性的,支援各種不同方式的排序。 redis 與memcached一樣,為了確保效率,資料都是快取在記憶體中。區別的是redis會週期性的把更新的資料寫入磁碟或把修改 操作寫入追加的記錄文件,並且在此基礎上實現了master-slave(主從)同步。
redis目前提供四種資料型態:string,list,set及zset(sorted set)。
Redis的儲存分為記憶體儲存、磁碟儲存和log檔案三部分,設定檔中有三個參數對其進行配置。
save seconds updates :指出在多長時間內,有多少次更新操作,就將資料同步到資料檔案。
appendonly yes/no :是否在每次更新作業後進行日誌記錄。如果不開啟,可能會在斷電時導致一段時間內的資料遺失。因為redis本身同步資料 檔案是依照上面的save條件來同步的,所以有的資料會在一段時間內只存在於記憶體中。
appendfsync no/always/everysec :資料快取同步至磁碟的方式。 no表示等作業系統進行資料快取同步到磁碟,always表示每次更新作業後手動呼叫fsync()將資料寫到磁碟,everysec表示每秒同步一次。
is的安裝及使用
先在網路上下載redis,我下載的是redis-2.0.2,我解壓縮到了和安裝Python相同的目錄下,進入redis-2.0.2,下面有這幾個檔案:
#
redis-server.exe redis伺服器的daemon啟動程式 ## redis.conf # -cli.exe redis命令列操作工具。當然,也可以用telnet根據其純文字協定來操作
redis-check-dump.exe 本地資料庫檢查
redis-check-a # redis-benchmark.exe 效能測試,以模擬同時由N個客戶端傳送M個SETs/GETs 查詢(類似Apache的ab 工具)
############################################################################################# ################benchmark工具測試訊息:################向redis伺服器發送10萬個請求,每個請求附帶60個並發客戶端######
哎呀,我的電腦有點吃不消了,不過最終還是顯示出了4.03秒完成了10萬個請求的測試,
部分結果截圖如下:
#啟動Redis服務(conf檔案製定設定檔(redis-server.exe redis.conf ),若不指定則預設):
#
啟動cmd視窗要一直開著,關閉後則Redis服務關閉。
這時服務開啟著,另外開一個cmd視窗進行,設定客戶端:
C:\redis-2.0.2> redis-cli.exe -h 127.0.0.1 -p 6379
然後我們可以在這裡輸入我們想要輸入的指令,redis很重要的一個動作就是set和get
客戶端如下:
#此時伺服器端(這裡也是本機)顯示如下(有一個客戶端連接了):
#上述在客戶端設定的key是常駐記憶體的,就是關閉窗口,下次開窗get key的值還是“jzhou”,呵呵。
(注意操作時,伺服器端一定要開啟服務,否則客戶端連不上。)
Redis提供了多種語言的客戶端,包括Java,C++,python。
以上是Redis的安裝與使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!