RedisKVStore for Redis系統——基本知識點

來源:互聯網
上載者:User

Redis 遠程字典服務  ——Nosql技術

一、五種基本的資料類型

String  list  hash  set  sorted set(排序集合)

二、五種特性

(1)inmemory  在記憶體中   與cache類似,是一個以key-value儲存的緩衝系統

(2)弱化事務   基本是沒有事務概念的,只有在某些地方會對事務進行遍曆,而且它的遍曆也不是遇到錯誤就停下來,而是遇到錯誤不管也不處理。

(3)叢集環境

(4)Key-value查詢

(5)指令碼語言支援

三、

redis是一個單線程的系統,

支援持久化(cache不支援持久化),

訂閱/發布功能

(

Redis 的訊息佇列功能

A    B    C

如果A,B,C伺服器都訂閱redis的某個key,那麼就可以通過A在這個key裡發布資訊,放到redis的訊息佇列,redis會把訊息推送到所有訂閱了這個key的B,C伺服器。Redis本身是不儲存這個資料的。

)

 

四、redis和Memcache的區別

Memcache不能叢集,最大為1M

Redis可以叢集,最大為1G

 

五、Redis 常用於web伺服器和資料庫之間,充當緩衝系統,因為其具有持久化功能,可以串連資料庫,大量的資料放在redis裡面緩衝,web伺服器或者應用與redis緩衝進行互動,可提高程式執行的效能。

   Web伺服器——redis伺服器——資料庫

六、redis有一個第三方的圖形介面 Redis Desktop Manager。不過並不是特別的好用。

七、Redis資料結構的各種命令

         http://redisdoc.com/  redis命令參考

String 類型 

List類型

Lpush  Rpush  Lpop  Rpop  Irange  BLpop Brpop阻塞版

 

八、Session管理

九、叢集服務

1、解決單節點故障

2、讀寫分離

                                Redis share

Web伺服器 ——redis mater

                                Redis share

 

十、Redis充當Message Queue

訊息佇列    實現訂閱/發布功能

十一、redis充當資料庫伺服器

 

 

十二、Redis目前需要解決的問題就是記憶體問題。

記憶體有限,遊戲資料龐大,如何把redis記憶體中的資料寫入到資料庫中,或者從資料庫中讀出來資料。

1、序列化到本地

2、Redis是否支援資料寫入到記憶體中

3、叢集擴容,不過這隻能解決容量的問題,不能解決遊戲中大量死資料的問題

 解決記憶體問題:主要還是要從如果從遊戲死資料中分離出來活躍使用者的角度下手。

      方法:合服的時候清除死資料,判斷玩家playerBean資料是否超過某一時間,超過時間設定玩家playCache裡狀態標識位為非法。在從資料庫大量load玩家playerCache資料到記憶體中,狀態非法和資料為空白的被剔除掉。


4、架構解決

 

Redis的清除到期機制:

   每次隨機10個key,閒置時間不停的執行。記憶體緊張的時候會全部遍曆,刪除到期的key來釋放記憶體。

 

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.