資源描述:
《redis學習筆記整理》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應用文檔-天天文庫。
1、www.hicode.cnredis學習筆記整理一、redis環(huán)境搭建2二、redis學習筆記之數(shù)據(jù)類型3三、redis學習筆記之排序11四、redis學習筆記之事務16五、redis學習筆記之pipeline20六、redis學習筆記之發(fā)布訂閱23七、redis學習筆記之持久化28八、redis學習筆記之主從復制30九、redis學習筆記之虛擬內(nèi)存31www.hicode.cnwww.hicode.cnredis環(huán)境搭建1.簡介??????redis是一個開源的key-value數(shù)據(jù)庫。它又經(jīng)常被認為是一個數(shù)據(jù)
2、結(jié)構(gòu)服務器。因為它的value不僅包括基本的string類型還有l(wèi)ist,set,sortedset和hash類型。當然這些類型的元素也都是string類型。也就是說list,set這些集合類型也只能包含string類型。你可以在這些類型上做很多原子性的操作。比如對一個字符value追加字符串(APPEND命令)。加加或者減減一個數(shù)字字符串(INCR命令,當然是按整數(shù)處理的).可以對list類型進行push,或者pop元素操作(可以模擬棧和隊列)。對于set類型可以進行一些集合相關(guān)操作(intersectionu
3、niondifference)。memcache也有類似與++,--的命令。不過memcache的value只包括string類型。遠沒有redis的value類型豐富。和memcahe一樣為了性能。redis的數(shù)據(jù)通常都是放到內(nèi)存中的。當然redis可以每間隔一定時間將內(nèi)存中數(shù)據(jù)寫入到磁盤以防止數(shù)據(jù)丟失。redis也支持主從復制機制(master-slavereplication)。redis的其他特性包括簡單的事務支持和發(fā)布訂閱(pub/sub)通道功能,而且redis配置管理非常簡單。還有各種語言版本的開源
4、客戶端類庫。(www.hicode.cn)2.安裝下載地址:http://redis.googlecode.com/files/redis-2.0.4.tar.gz2.0目前是最新穩(wěn)定版可以在linux下運行如下命令進行安裝$tarxzfredis-2.0.4.tar.gz$cdredis-2.0.4$makemake完后redis-2.0.4目錄下會出現(xiàn)編譯后的redis服務程序redis-server,還有用于測試的客戶端程序redis-cli下面啟動redis服務.$./redis-server注意這種方式
5、啟動redis使用的是默認配置。也可以通過啟動參數(shù)告訴redis使用指定配置文件使用下面命令啟動.$./redis-serverredis.confredis.conf是一個默認的配置文件。我們可以根據(jù)需要使用自己的配置文件。啟動redis服務進程后,就可以使用測試客戶端程序redis-cli和redis服務交互了.比如$./redis-cliredis>setfoobarOKredis>getfoo"bar"這里演示了get和set命令操作簡單類型value的例子。foo是key,bar是個string類型的v
6、alue沒linux的可以通過這個在線的來練習,當然在線版的很多管理相關(guān)的命令是不支持的。http://try.redis-db.com/3.java客戶端hello,world客戶端jar包地址http://cloud.github.com/downloads/alphazero/jredis/jredis-1.0-rc2.jarwww.hicode.cnwww.hicode.cn。版本目前有點老,支持到Redis1.2.6。最新版2.0的還沒release在eclipse中新建一個java項目,然后添加jre
7、dis包引用。下面是個hello,world程序packagejredisStudy;importorg.jredis.*;importorg.jredis.ri.alphazero.JRedisClient;publicclassApp{publicstaticvoidmain(String[]args){try{JRedisjr=newJRedisClient("192.168.56.55",6379);//redis服務地址和端口號Stringkey="mKey";jr.set(key,"hello,red
8、is!");Stringv=newString(jr.get(key));Stringk2="count";jr.incr(k2);jr.incr(k2);System.out.println(v);System.out.println(newString(jr.get(k2)));}catch(Exceptione){//TODO:handleexception}}}好