centos---存儲系統 Redis 簡介及編譯安裝

Redis是一款開源的、高性能的鍵-值存儲(key-value store)。它常被稱做是一款數據結構服務器(data structure server)。Redis的鍵值能夠包括字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等數據類型。   對於這些數據類型,你能夠執行原子操做。例如:對字符串進行附加操做(append);遞增哈希中的值;向列表中增長元素;計算集合的交集、並集與差集等。

    爲了得到優異的性能,Redis採用了內存中(in-memory)數據集(dataset)的方式。根據使用場景的不一樣,你能夠每隔一段時間將數據集轉存到磁盤上來持久化數據,或者在日誌尾部追加每一條操做命令。linux

    Redis一樣支持主從複製(master-slave replication),而且具備很是快速的非阻塞首次同步(non-blocking first synchronization)、網絡斷開自動重連等功能。同時Redis還具備其它一些特性,其中包括簡單的check-and-set機制、pub/sub和配置設置等,以便使得Redis可以表現得更像緩存(cache)。redis

    Redis還提供了豐富的客戶端,以便支持現階段流行的大多數編程語言。詳細的支持列表能夠參看Redis官方文檔:http://redis.io/clients。Redis自身使用ANSI C來編寫,而且可以在不產生外部依賴(external dependencies)的狀況下運行在大多數POSIX系統上,例如:Linux、*BSD、OS X和Solaris等。編程

  • Redis的安裝

說明:Redis的安裝版本選取爲2.2.6,安裝包爲redis-2.2.6.tar.gz,系統平臺爲CentOS 5.5。緩存

1. 解壓安裝包服務器

使用tar -xzvf redis-2.2.6.tar.gz來解壓安裝包。假設Redis 解壓後目錄爲redis-2.2.6,絕對路徑使用$REDIS_HOME來表示。其目錄結構以下所示:網絡

其中,README和INSTALL中包含了編譯、安裝Redis的簡單說明,在正式開始以前請先閱讀這兩個文件。數據結構

2. 編譯
app

進入$REDIS_HOME/src目錄,使用make命令來編譯Redis,該編譯過程將會產生redis-server二進制文件。
編程語言

3. 測試性能

在編譯Redis完成以後,最好使用make test命令進行一下測試,可是該步不是必須的。

4. 安裝

使用make install來完成Redis的安裝。Redis的全部二進制文件將會被安裝在/usr/local/bin目錄下。


  • Redis的運行和測試:

    假設Redis安裝在/usr/local/bin目錄下,而且該目錄包含在$PATH環境變量的搜索目錄中。那麼即可以使用redis-server來運行Redis。若是Redis安裝在其餘目錄中,可使用/path/to/redis-server來啓動Redis,或者將Redis的安裝目錄添加到$PATH的搜索目錄中。

    Redis自帶了一個稱爲redis-cli的命令行客戶端,該客戶端會在運行make命令的時候自動編譯。用戶可使用該客戶端完成Redis的一些簡單測試或操做。

    使用redis-cli來啓動該客戶端,啓動後命令行前綴爲:redis>。用戶能夠在此進行後續操做,這相似於MySQL的命令行模式。
例如,使用以下命令來存儲key-value對:

 

使用get命令來獲取所存儲的值:

至此,Redis的安裝和簡單測試便完成了。須要注意的是,在運行make test命令的時候,有時候會出現以下錯誤:
(cd ..; tclsh8.5 tests/test_helper.tcl --tags "" --file "")
/bin/sh: tclsh8.5: command not found
make: *** [test] Error 127
之因此會出現該錯誤是由於在運行make test命令時,須要Tcl 8.5的庫,而CentOS 5.5自帶的版本爲8.4。用戶可使用以下命令來查看:

此時,你能夠到Tcl的官方網站http://www.tcl.tk/下載8.5版本,並按照Tcl的安裝說明自行安裝即可。安裝完成後,使用ldconfig再次查看:

 

此時,再次運行make test命令即可。


一、從官網下載和解壓源代碼
wget http://redis.googlecode.com/files/redis-2.2.5.tar.gz
tar xzf redis-2.2.5.tar.gz
cd redis-2.2.5

二、編譯,並使用tcmalloc加速(見http://www.linuxidc.com/Linux/2011-07/38664.htm


make USE_TCMALLOC=yes

三、啓動redis
./redis-server ./redis.conf

四、驗證是否在使用tcmalloc lsof -n |grep tcmalloc redis-ser 26689 root mem REG 253,3 1800221 4182039 /usr/local/lib/libtcmalloc.so.0.1.0 redis-ser 26694 root mem REG 253,3 1800221 4182039 /usr/local/lib/libtcmalloc.so.0.1.0 redis-ser 26697 root mem REG 253,3 1800221 4182039 /usr/local/lib/libtcmalloc.so.0.1.0 redis-ser 26701 root mem REG 253,3 1800221 4182039 /usr/local/lib/libtcmalloc.so.0.1.0

相關文章
相關標籤/搜索