Redis Redis5 0的一些新特性

2022-05-19 10:42:54 字數 1749 閱讀 7057

redis5.0總共增加了12項新特性,如下:

1.新增加的stream(流)資料型別,這樣redis就有了6大資料型別,另外五種是string(字串),hash(雜湊),list(列表),set(集合)及zset(sorted set有序集合)。它彌補了其它5種資料型別不能實現的功能,比如list資料型別只能先進先出,或者後進先出,不能從中間去資料,但是stream可以實現。

1)建立stream

命令:xadd

用法:xadd key id field string  (id可以自定義)

例項

127.0.0.1:6379> xadd key1 *month month_value  #*代表預設id 

"1563893367304-0

"                  #返回值說明:前面是unix毫秒時間戳 後面是序列號  

127.0.0.1:6379> xadd key2 0-1

car car_value #自定義id為 0-1

"0-1

"

2)檢視stream長度命令:xlen返回stream中元素的個數用法:xlen key

127.0.0.1:6379>xlen key1

(integer)

1

stream 詳情介紹 :

2.新的redis模組api : times  and cluster api,是乙個抽象的集群訊息匯流排,用於方便開發分布式系統。

3.rdb(redis datebase)現在用於儲存 lfu(最近最少使用淘汰演算法) 和 lru(最近不經常使用淘汰演算法)元資料資訊。

4.集群管理器從ruby(redis-trib.rb)移植到c**。以前建立集群時候需要通過ruby指令碼來建立,現在用c**重新編寫,不用在額外按照ruby了。

5.新增加有序集合的sorted set4個命令:zpopmin ,zpopmax和它們的阻塞變種。

6.主動記憶體碎片整理功能version2版本,依賴於jemalloc記憶體分配器。

7.增強hyperloglog實現,這個功能是估算集合基數,redis5優化這個演算法來節省空間。

8.更好的記憶體統計報告(碎片整理和記憶體報告)。

在redis4點時候已經有自動整理記憶體碎片的功能了,不過那時候功能還屬於實驗階段。下圖是redis4文件所說

redis5是在redis4的基礎上將記憶體碎片自動清理功能進行了完善,現在該功能已經成熟。

那麼這個功能有如下作用:

1.在redis執行期間自動進行記憶體碎片清理,可以實時釋放記憶體空間。

2.通過記憶體報告來了解整個系統的記憶體使用情況。

在redis配置檔案中檢視記憶體碎片控制相關引數

引數說明:

1)activedefrag:記憶體碎片功能啟動配置項,當為yes就表示開啟該功能。

9.許多帶有子命令的命令現在都有乙個help子命令。

10.客戶端斷開和連線時候效能更好。

11.錯誤修復和改進。

12.jemalloc公升級到5.1版本。

一些人,一些事,一些

我覺得這是國內it企業浮躁和傳統的官本位性質決定的,導致國內企業都本末倒置。要想改變命運,我覺得有以下出路 1.不做技術了,改做混混 混混的概念很廣泛的,比如銷售 經理 幹部 皮包公司之類其實都屬於這類。中國就是這樣,越浮越掙錢,只有混混才能發財。要不更進一步,做流氓,廣義的流氓,也很不錯。2.專心...

關於RemoteView 的一些字型的一些問題

最近在做乙個 在notification 新增 天氣通知的小部分 發現困擾在 如何給 remoteview 中的字型 作修改 大家都知道 textview 設定字型 在xml 中 可以 設定 3種 而其他字型的設定 需要通過 typeface 去設定 具體 將字型放置在asset 資料夾中 type...

iPhone UITableVIew 的一些理解

uitableview 用的不少,其重用機制還是有點迷惑。之前有用過sdwebimage和 結合該demo,做個小總結 2 uitableview可以響應uiscrollview 的delegate,因為uitableview中就有乙個scrollview 得先宣告 inte ce rootview...