標籤:style http color io os 使用 ar java strong
Redis 是一個高效能的key-value資料庫。 redis的出現,很大程度補償了memcached這類keyvalue儲存的不足,在部 分場合可以對關聯式資料庫起到很好的補充作用。它提供了Python,Ruby,Erlang,PHP,Java用戶端,使用很方便。
Redis使用單線程的IO複用模型,自己封裝了一個簡單的AeEvent事件處理架構,主要實現了epoll、kqueue和select,對於單純只有IO操作來說,單線程可以將速度優勢發揮到最大,但是Redis也提供了一些簡單的計算功能,比如排序、彙總等,對於這些操作,單執行緒模式實際會嚴重影響整體輸送量,CPU計算過程中,整個IO調度都是被阻塞住的。
Redis除了作為儲存之外還提供了一些其它方面的功能,比如彙總計算、pubsub、scripting等,對於此類功能需要瞭解其實現原理,清楚地瞭解到它的局限性後,才能正確的使用,比如pubsub功能,這個實際是沒有任何持久化支援的,消費方串連閃斷或重連之間過來的訊息是會全部丟失的,又比如彙總計算和scripting等功能受Redis單執行緒模式所限,是不可能達到很高的輸送量的,需要謹慎使用。
本例子Linux採用的CentOS5.4
下面來介紹一下redis的安裝
wget http://redis.googlecode.com/files/redis-2.0.4.tar.gz
tar zxvf redis-2.0.4.tar.gz
cd redis-2.0.4
make
make完後 redis-2.0.4目錄下會出現編譯後的redis服務程式redis-server,還有用於測試的用戶端程式redis-cli
安裝成功
啟動服務
./redis-server
也可以通過啟動參數告訴redis使用指定設定檔使用下面命令啟動
./redis-server redis.conf
redis.conf是一個預設的設定檔。我們可以根據需要使用自己的設定檔。
啟動redis服務進程後,就可以使用測試用戶端程式redis-cli和redis服務互動了
注意啟動的時候,會出現
WARNING overcommit_memory is set to 0!Background save may fail under
low memory condition. To fix this issue add‘vm.overcommit_memory = 1‘ to /etc/sysctl.conf and
[6020] 10 Aug 20:58:21 * The server is nowready to accept connections on port 6379
[6020] 10 Aug 20:58:21 - 0 clientsconnected (0 slaves), 533432 bytes in use
[6020] 10 Aug 20:58:30 - 0 clientsconnected (0 slaves), 533432 bytes in use
由於預設配置是串連到原生
這時候你要修改設定檔的ip地址串連你伺服器啊
還有就是執行:sysctl vm.overcommit_memory=1
然後再啟動服務就可以了
Redis的簡單使用和介紹 linux(centos 5.4) redis install