Redis作為快取自我總結(完全轉載)

我是溫浩然發表於2016-09-07

轉載的目的是為了方便閱讀

Redis作為快取自我總結

來源:http://doushini.iteye.com/blog/1879616?utm_source=tuicool&utm_medium=referral

redis快取伺服器筆記
redis是一個高效能的key-value儲存系統,能夠作為快取框架和佇列
但是由於他是一個記憶體記憶體系統,這些資料還是要儲存到資料庫中的


作為快取框架:
create/updae/delete—同時存到redis和資料庫
query–先從redis查,沒有記錄才從資料庫查,並把從資料庫查的結果也放一份到redis

作為快取佇列:

2、把物件Object儲存到redis中,怎麼存?memcache存取物件是序列化和反序列化
使用通用的序列化、反序列化(頻繁的會很消耗cpu,使用Google Protocol Buffer,將物件打成二

進位制流)
或者使用json儲存(阿里巴巴的fast-json)

3、java使用redis的客戶端一般是:jedis
jedis的原生介面只支援基本資料型別和String、byte[]

4、我對redis佇列的理解:
重要的資料:先存到資料庫,然後存到redis
要求響應速度很高的的資料:先寫快取,然後通過訊息佇列再寫入資料庫

 因為Redis的value支援String、list、set、zset
那麼就可以把redis的list當作佇列來用
入隊:lpush mylist `hello1`
出隊:lpop mylist

 

5、其提供AOF(追加式操作記錄檔案)和DUMP(定期資料備份)兩種持久化方式

 

6、VM(虛擬記憶體機制):如果有1萬條資料儲存到記憶體中,那麼我就要配置能儲存這麼多資料的記憶體
然後這1萬條資料有9000條不是活躍資料,那就白白浪費了,可以這樣做,當資料容量超過記憶體時,

將部分value儲存到檔案中
memcached是把資料完全儲存到記憶體中,而redis是大部分的,因為他支援自定義的VM
同時Redis支援主從複製機制


相關文章