亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

redis搭建實戰記錄

系統 3836 0
Redis is an open source, advanced? key-value store . It is often referred to as a? data structure server ?since keys can contain strings ,? hashes ,? lists ,? sets ?and? sorted sets . ??

-- from? http://redis.io/ ?

?

redis ?是一個基于內存的高性能key-value數據庫,數據都保存在內存中定期刷新到磁盤,以極高的讀寫效率而備受關注。他的特點是支持各種數據結構,stirng,hashes, list,set,和sorted sets

client端對于不同數據結構是使用不同的命令

?

這里說一下redis的安裝

虛擬機環境: ?centos ?

?

1 wget ?make 安裝

wget? http://download.redis.io/redis-stable.tar.gz

tar xvzf redis-stable.tar.gz

cd redis-stable

make

?

? 這里記錄一下我安裝過程中出現的問題 : ?

make: Warning: File `Makefile' has modification time 5.4e+06 s in the future

cd src && make all

make[1]: Entering directory `/redis/redis-2.4.7/src'

make[1]: Warning: File `Makefile' has modification time 5.4e+06 s in the future

MAKE hiredis

make[2]: Entering directory `/redis/redis-2.4.7/deps/hiredis'

make[2]: Warning: File `Makefile' has modification time 5.4e+06 s in the future

cc -c -std=c99 -pedantic -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings??? -g -ggdb? net.c

make[2]: cc: Command not found

make[2]: *** [net.o] Error 127

make[2]: Leaving directory `/redis/redis-2.4.7/deps/hiredis'

make[1]: *** [dependencies] Error 2

make[1]: Leaving directory `/redis/redis-2.4.7/src'

make: *** [all] Error 2

?

?

第一個問題

make: Warning: File `Makefile' has modification time 5.4e+06 s in the future

系統時間調整錯了,調過來就好了

?

第二個問題:

make[2]: Entering directory `/redis/redis-2.4.7/deps/hiredis'

cc -c -std=c99 -pedantic -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings??? -g -ggdb? net.c

make[2]: cc: Command not found

沒安裝 gcc

yum install gcc-c++

?

第三個問題:

make 的時候顯示

make[1]: Entering directory `/redis/redis-2.4.7/src'

which: no tclsh8.5 in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)

You need 'tclsh8.5' in order to run the Redis test

沒安裝 tcl

按照官網 http://www.linuxfromscratch.org/blfs/view/cvs/general/tcl.html ?上的安裝
?

安裝完成之后, make 成功!

?

安裝成功之后會在 src 文件夾內有redis-server和redis-cli兩個命令

建議將其放到 bin

sudo cp redis-server /usr/local/bin/

sudo cp redis-cli /usr/local/bin/

?

?

好了,現在 redis 就安裝成功了

?

2 測試redis安裝情況?

我只在一臺虛擬機上安裝了 redis ,所以這臺虛擬機既是服務器,又是客戶端

測試:

?

1? 使用 secureRt 打開一個會話,redis-server,讓其作為服務器運行

[19282] 19 Feb 23:52:57 - 1 clients connected (0 slaves), 726248 bytes in use

[19282] 19 Feb 23:53:02 - DB 0: 1 keys (0 volatile) in 4 slots HT.

[19282] 19 Feb 23:53:02 - 1 clients connected (0 slaves), 726248 bytes in use

[19282] 19 Feb 23:53:07 - DB 0: 1 keys (0 volatile) in 4 slots HT.

[19282] 19 Feb 23:53:07 - 1 clients connected (0 slaves), 726248 bytes in use

?

2? 打開另一個會話:

ast login: Tue Feb 19 22:49:49 2013 from 192.168.1.103

redis搭建實戰記錄

?

set key get key 都正確

redis 搭建測試通過 ?

?

參考文章:

http://redis.io/ ?

http://redis.io/topics/quickstart ?

http://hi.baidu.com/thinkinginlamp/blog/item/3358c93d174e35ce9f3d62bf.html ?

持久化 ?

redis 支持 RDB AOF 兩種持久化方式

?

The RDB persistence performs point-in-time snapshots of your dataset at specified intervals.

RDB 是一種即時快照的存儲方式,定時對數據庫進行 snap shot

RDB 優點:

1 RDB 對于數據備份非常容易。你可以設置 1 天或者 30 天對數據進行一次備份,這樣當發生數據災難的時候能很容易恢復

2? 由于 RDB 對數據備份時 redis 只做備份操作,所以備份最大化的使用了 redis 的性能,同時也導致了對于大的數據集, RDB 備份快于 AOF

?

RDB 缺點:

1? 如果你的需求只是要知道兩個時間段中 redis 的變化, RDB 是弱于 AOF

2? 由于 RDB 經常使用子進程 fork() 進行數據備份,所以如果當數據比較大的時候,數據備份會比較耗時

?

AOF 優點:

1? 你必須有一個 AOF f sync 的策略:

或者是不進行 fsync ? 或者每秒 fsync 一次,或者每次 query 查詢的時候 fsync

2 AOF 只記錄修改 log ,當存儲的時候由于某種原因寫 log 失誤了,使用 redis -check-aof 能很好的修復

3? redis 數據太大的時候, AOF 可以很好被重寫到新的 redis

?

AOF 缺點:

1 AOF 通常比 RDB

2 AOF RDB

?

?--------------------------

流水線

?

redis 是客戶端和服務器端的通信交互 TCP 協議

?

當客戶端發送請求,服務器端接受請求并發送回復,客戶端接收回復,這個過程叫做 RTT (Round Trip Time)

比如如果 RTT 時間是 250 微秒,既是服務器端每秒能處理 10 萬個請求,那么,我們只能認為 redis 每秒處理 4 個請求

?

server 不需要等待 client 接收了消息之后再處理新 request 的技術叫做 pipe lining (流水線)。這個技術早在幾十年前就應用在了各種協議上(比如 pop3 ), redis 也很早使用了這個技術。

?

實驗:

$ (echo -en "PING\r\nPING\r\nPING\r\n"; sleep 1) | nc localhost 6379

當調用這個例子的時候:

server 一次返回:

+PONG

+PONG

+PONG

?

而不是返回一次 PONG ,過了 RTT 時間再返回 PONG ,這個例子就說明了 redis 使用 pipe lining

?

注: nc 命令說明請看:

http://www.cnblogs.com/faraway/archive/2008/08/30/1280070.html ?

?

?

---------------------------------

訂閱?

?

? redis 支持訂閱( sub scribe

當一個 client 訂閱一個或多個變量,其他客戶端修改了變量并 publish 之后,這個客戶端會收到消息

?

例子:

Client 1:

SUBSCRIBE first second

?

Client2:

PUBLISH second Hello

?

client1 顯示:

message

second

Hello2

?

?

redis 還支持模式訂閱( psubscribe 命令)

PSUBSCRIBE f*

?

PHP

PHP,Linux學習
?
?
?
?
?
posted @? 2012-02-06 07:59 ?軒脈刃 閱讀(1530) |? 評論 (4) ? 編輯
?
?
posted @? 2012-02-03 01:10 ?軒脈刃 閱讀(1049) |? 評論 (1) ? 編輯
?
?
?
?
?
?
?
?
?
posted @? 2011-06-07 18:37 ?軒脈刃 閱讀(1867) |? 評論 (3) ? 編輯
?
?
posted @? 2011-06-03 14:40 ?軒脈刃 閱讀(1544) |? 評論 (3) ? 編輯
?
?
?
?
?
?
?

?

?
?

---------------------------------

參考文檔:

---------------------------------

作者:yjf512(軒脈刃)

出處:http://www.cnblogs.com/yjf512/

本文版權歸yjf512和cnBlog共有,歡迎轉載,但未經作者同意必須保留此段聲明?

redis搭建實戰記錄


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美一级亚洲一级 | 国内精品51视频在线观看 | 国产一级毛片一区二区三区 | 日韩精品一区二区三区高清 | 亚洲人人精品 | 色鬼久久爱综合久久鬼色 | 亚洲精品国产啊女成拍色拍 | 国产欧美一区二区三区久久 | 91精品一区二区 | 成年女人18毛片毛片免费 | 国产成a人片在线观看视频 国产成a人片在线观看视频99 | 在线500福利视频国产 | 国内精品伊人久久大香线焦 | 久操青青| 外国成人网在线观看免费视频 | 国产尤物精品视频 | 久久精品免费一区二区视 | 99视频只有精品 | 国产做爰免费视频观看 | 奇米影视777色 | 亚洲视频中文字幕 | 久久久久久久91精品免费观看 | 欧美猛操 | 男女乱淫真视频免费一级毛片 | 99久久香蕉国产线看观香 | 98色花堂永久地址国产精品 | 国产精品亚洲片在线牛牛影视 | 亚洲一区二区在线成人 | 国产香蕉尹人综合在线 | 国产欧美久久久精品 | 一级毛片区 | 亚欧在线视频 | 亚洲 欧美 日韩 在线 | 婷婷色中文字幕 | 国产一级一国产一级毛片 | 9999在线观看| 欧美福利视频在线 | 国产a级网站 | 久久精品国产麻豆不卡 | 成人亚洲综合 | 久久国产精品亚洲一区二区 |