《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > Redis集群性能測試分析
Redis集群性能測試分析
2016年微型機與應用第10期
柳皓亮,王麗,周陽辰
(中國科學院電子學研究所蘇州研究院 存儲計算組, 江蘇 蘇州 215123)
摘要: Redis是一個非關系型數據庫,屬于內存級數據庫。但是由于數據量的不斷增大,單機的Redis物理內存遠遠無法滿足大數據的需要,因此需要搭建分布式的Redis,可以動態擴展內存,彌補單機Redis物理內存不夠的缺點。本次測試旨在對Redis各方面性能有深入的了解,為今后的工作打好基礎。本次實驗的目的主要是搭建Redis Cluster和TwemProxy Redis兩種集群,分別對其進行性能測試,測試出集群性能的拐點,找出性能的瓶頸有哪些,并對兩套集群進行比較,以便于在不同業務場景下擇優選擇。
Abstract:
Key words :

  柳皓亮,王麗,周陽辰

  (中國科學院電子學研究所蘇州研究院 存儲計算組, 江蘇 蘇州 215123)

  摘要:Redis是一個非關系型數據庫,屬于內存級數據庫。但是由于數據量的不斷增大,單機的Redis物理內存遠遠無法滿足大數據的需要,因此需要搭建分布式的Redis,可以動態擴展內存,彌補單機Redis物理內存不夠的缺點。本次測試旨在對Redis各方面性能有深入的了解,為今后的工作打好基礎。本次實驗的目的主要是搭建Redis ClusterTwemProxy Redis兩種集群,分別對其進行性能測試,測試出集群性能的拐點,找出性能的瓶頸有哪些,并對兩套集群進行比較,以便于在不同業務場景下擇優選擇。

  關鍵詞:Redis Cluster;TwemProxy Redis;性能測試

1存儲測試分析

  本次存儲測試是用Java程序調用Jedis提供的API向集群里面灌入數據。首先研究灌入少量數據后兩種集群的數據分布在哪些節點上,然后研究灌入大量數據后兩種集群的落盤情況。

  1.1Redis Cluster

 ?。?)少量數據儲存分析

  用程序向某一個節點灌入30條數據,結果發現每個節點擁有部分數據,數據存儲得很分散。由此可知,數據落盤時把一份數據分成多份存儲在不同的Redis節點上,進行分片存儲,通過調研得知這種分配方式是通過sharding算法分配[1]的。

 ?。?)大量數據存儲分析

  首先查看單節點未插入數據前的rdb大小為18 B;然后,用Java程序插入10萬條數據,查看rdb大小為1 289 892 B,然后改用Java程序向Redis Cluster集群中灌入10萬條數據,查看每個節點rdb文件大小分別為214 912 B、216 586 B、215 939 B、214 145 B和213 757 B。由此可見,單機的rdb大小約等于每個Redis節點rdb大小之和,并且每個節點rdb大小相對均衡。綜上所述,這種落盤方式把一份數據平均分配到每一個節點上,也就是說每一個節點的rdb文件共同組成一份完整的數據。

  1.2TwemProxy Redis

 ?。?)少量數據存儲分析

  向集群中插入20條key為0~19的數據,查看數據在各個Redis節點分布情況,結果發現某個節點存儲第0~9的數據,另一個節點存儲11~19的數據,最后一個節點沒有存儲數據。經過多次相同參數測試,每次落盤結果相同,由此可見TwemProxy[2]根據相應算法將數據落盤到各個節點中,并且分配算法是對一段連續的數據進行落盤,而不是對每一條數據進行選擇存入到哪個節點中的操作,這樣可以減少路由開銷。

 ?。?)大量數據存儲分析

  首先查看單機Redis節點未插入數據前的rdb文件大小為84 B; 然后插入10萬條數據,查看rdb文件大小為1.6 MB;接著改用Java程序向TwemProxy Redis[2]集群中灌入10萬條數據,查看各各節點rdb文件大小分別為0.49 MB、0.62 MB和0.51 MB。由此可見,單機的rdb大小約等于每個Redis節點rdb大小之和,并且每個節點rdb大小相對均衡。由此可見,這種落盤方式把一份數據平均分配到每一個節點上,也就是說每一個節點的rdb文件共同組成一份完整的數據。

2使用Java代碼測試吞吐率

  主要從3個方面進行測試,當value類型分別是String類型、list類型和map類型時,統計吞吐率的走勢,找出拐點,并分析原因[2]。

  2.1Redis Cluster

 ?。?)String插入測試——吞吐率隨value大小變化情況:當吞吐量一定時并且插入的是String類型數據時,如果value值在1 KB以內時,吞吐率基本保持不變;如果 value值大于1 KB,吞吐率隨value增大而減小。當value值達到10 KB且請求總量為1萬條時,共100 MB的數據,內存遠遠沒有被打滿,即此時內存的使用率仍比較低,所以此時Redis數據存儲瓶頸[3]并不是內存。同時監控了網卡和IO,發現均處于正常水平,所以也不是這兩方面的原因。所以可以推出,此時吞吐率下降是由于Redis本身不能夠承受過大的value值。

 ?。?)String插入測試——吞吐率隨吞吐量變化情況:當value大小一定時,吞吐量的增大對吞吐率沒有影響。

 ?。?)String獲取測試——吞吐率隨value大小變化關系:結果與(2)相同。

 ?。?)List插入測試——吞吐率隨List大小變化情況:當List元素大小和吞吐量一定時,吞吐率隨list的size增大而減小,size從10增加大100時吞吐率下降了一半。由此可見,Redis Cluster對List的支持效果并不好,性能有待提升,不建議在以后的項目階段用Redis Cluster存儲List。

 ?。?)List插入測試——吞吐率隨List元素字節大小變化情況: List的元素字節大小變化對吞吐率沒有影響。

  (6)List插入測試——吞吐率隨吞吐量大小的變化關系:吞吐率與吞吐量無關。

 ?。?)Map插入測試——吞吐率隨Map size大小變化關系:當吞吐量和元素字節一定時,吞吐率隨Map的size增大而減小。

  (8)Map插入測試——吞吐率隨Map的value大小變化情況:當吞吐量和Map的size一定時,吞吐率隨Map元素字節增大而減小。

  2.2TwemProxy Redis

  TwemProxy Redis[2]采用單條讀寫和批量讀寫兩種方式進行壓力測試,測試結果如下。

  (1)String單條插入測試——吞吐率隨value大小變化情況:value值在1 KB以內且總請求量為1萬時吞吐率基本保持不變;當value值大于1 KB時, 吞吐率隨value增大而減小,單條TwemProxy Redis的插入吞吐率明顯比Redis Cluster低。

 ?。?)String批量插入測試——吞吐率隨value大小變化情況:當吞吐量一定時,value值小于100 B時,吞吐率隨value增大而增大;當value值大于100 B時,吞吐率隨value增大而減小。由此可見,批量插入存在極值點,此外批量插入的吞吐率遠遠高于TwemProxy Redis和Redis Cluster的單條插入。

 ?。?)String單條獲取測試——吞吐率隨value大小變化關系:測試結果與(1)的結果相同。由此可見,TwemProxy Redis的單條讀寫效率一致。

  (4)String批量獲取測試——吞吐率隨value大小變化關系:結果與(2)相同。

 ?。?)String單條插入測試——吞吐率隨吞吐量的變化關系:吞吐率與吞吐量無關,TwemProxy Redis吞吐率只有Redis Cluster的一半,明顯吞吐率很低。

 ?。?)String批量插入測試——吞吐率隨吞吐量的變化關系:隨著吞吐量的增加,吞吐率也在增加。但在測試時將請求量給到10萬條后,程序宕掉并且集群服務停止工作,說明pipeline批量打包的數據量有限,即性能是有限的。但是可以通過打包多次解決這個問題,批量插入的吞吐率明顯高于TwemProxy Cluster和Redis Cluster的單條插入吞吐率。

  (7)List和Map類型的單條插入測試吞吐率變化:吞吐率變化與Redis Cluster的相同,但是吞吐率低于Redis Cluster。

  (8)List和Map類型的單條插入測試吞吐率變化:吞吐率變化與Redis Cluster的相同,但是吞吐率高于TwemProxy Cluster和Redis Cluster的單條吞吐率。

3結論

  (1) TwemProxy Redis的批量讀寫吞吐率遠遠高于Redis Cluster單條的吞吐率,Redis Cluster單條讀寫的吞吐率略高于TwemPrxoy Redis單條吞吐率。

 ?。?) Redis Cluster和TwemPrxoy Redis對List和Map集合的吞吐率很低,不建議存儲這兩種類型的數據。

  (3)當需要進行TwemProxy Redis批量操作時,需要通過程序保證一次批量讀寫的數據量不宜過大,否則底層服務會宕掉。

參考文獻

 ?。?] 王敏,陳亞光.數據庫系統輔助測試工具[J].微型機與應用,2013,32(3):1315,18.

 ?。?] 夏文忠,鄒雯奇.基于X86平臺的高性能數據庫集群技術的研究[J].微型機與應用,2015,34(1):3639,46.

 ?。?] 張蕾,侯瑞春,丁香乾,等.會話保持機制在集群系統中的應用研究[J].微型機與應用,2015,34(9):3234,50.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲图片欧美一区| 久久精品国产第一区二区三区最新章节| 亚洲欧美国产高清| 亚洲五月六月| 亚洲国产一区二区三区a毛片| 国产日韩欧美精品在线| 欧美香蕉视频| 欧美视频一区二区| 欧美日本韩国一区二区三区| 美女视频网站黄色亚洲| 久久亚洲精品伦理| 久久久久女教师免费一区| 久久国产视频网| 久久精品91| 久久久www成人免费精品| 欧美一级在线播放| 久久不射网站| 久久aⅴ乱码一区二区三区| 小辣椒精品导航| 午夜日韩激情| 欧美在线观看视频| 久久精品主播| 久久久久一区二区三区| 久久久久久高潮国产精品视| 久久精品日产第一区二区三区 | 亚洲欧美日韩一区二区三区在线| 亚洲深夜av| 亚洲欧美日韩国产中文| 亚洲一区国产| 欧美一区不卡| 久久久久成人精品| 久久亚洲综合色一区二区三区| 久久久久久网| 欧美激情国产高清| 欧美四级在线| 国产欧美在线看| 好吊色欧美一区二区三区四区| 亚洲大胆女人| 亚洲人在线视频| 亚洲私人影吧| 羞羞视频在线观看欧美| 亚洲第一精品福利| 日韩性生活视频| 亚洲欧美三级在线| 巨胸喷奶水www久久久免费动漫| 欧美阿v一级看视频| 欧美日韩亚洲不卡| 国产香蕉97碰碰久久人人| 激情文学综合丁香| 亚洲精品久久久久久久久久久久久 | 国产亚洲成年网址在线观看| 激情综合久久| 日韩午夜中文字幕| 欧美亚洲一区二区三区| 亚洲国产婷婷综合在线精品 | 亚洲深夜福利| 久久久久高清| 欧美区国产区| 国产亚洲精品激情久久| 亚洲国产网站| 亚洲欧美一区二区精品久久久| 亚洲国产欧美日韩| 亚洲欧美制服另类日韩| 女人香蕉久久**毛片精品| 国产精品久久久久久户外露出| 精品99视频| 亚洲一区bb| 亚洲精品视频在线看| 欧美伊人精品成人久久综合97| 在线观看一区视频| 一本色道久久99精品综合 | 亚洲永久免费视频| 久久午夜国产精品| 欧美日韩在线播放| 1769国产精品| 亚洲欧美在线免费观看| 一本色道久久综合亚洲二区三区| 欧美在线视频网站| 欧美日韩国产三区| 一色屋精品视频在线观看网站| 亚洲一级在线| 一本一本久久a久久精品综合妖精| 欧美中文字幕| 欧美天堂亚洲电影院在线播放 | 亚洲一区二区三区精品视频| 亚洲精品美女在线| 久久精品日产第一区二区| 欧美四级电影网站| 亚洲激情在线观看| 久久国产精品久久精品国产| 亚洲在线观看视频网站| 欧美黄色一区二区| 伊人成人在线视频| 校园激情久久| 午夜精品成人在线| 欧美日韩国产精品一区| 亚洲福利小视频| 亚洲第一页自拍| 久久精品亚洲一区| 国产精品视频男人的天堂| 日韩午夜精品| 99精品视频免费| 欧美顶级艳妇交换群宴| 狠色狠色综合久久| 久久国产免费看| 久久精品论坛| 国产欧美日本一区二区三区| 中国成人黄色视屏| 一区二区三区日韩| 欧美黑人在线播放| 欧美福利小视频| 久久精品一二三区| 国产精品萝li| 亚洲一区二区三区高清不卡| 亚洲天堂偷拍| 欧美视频在线看| 99这里只有精品| 一区二区三区精品视频| 欧美激情一区二区| 亚洲第一综合天堂另类专| 亚洲电影视频在线| 久久久人成影片一区二区三区| 国产欧美日韩一区二区三区在线| 亚洲免费在线精品一区| 午夜视频一区在线观看| 国产精品国产三级国产专播品爱网 | 亚洲美女网站| 欧美www在线| 亚洲丰满在线| 99国产精品国产精品久久| 欧美精品在线观看| 亚洲免费大片| 亚洲一区国产精品| 国产精品久久一级| 亚洲欧美国产va在线影院| 久久激情五月丁香伊人| 狠狠色狠狠色综合日日91app| 亚洲国产精品成人一区二区| 噜噜噜躁狠狠躁狠狠精品视频 | 亚洲激情网站| 亚洲少妇自拍| 国产精品视频一区二区三区| 亚洲资源在线观看| 久久免费偷拍视频| 亚洲国产精品久久久久婷婷老年 | 欧美亚洲视频在线观看| 久久久久久久97| 亚洲电影观看| 99精品久久免费看蜜臀剧情介绍| 欧美日韩中文字幕在线| 亚洲一区中文| 久久婷婷蜜乳一本欲蜜臀| 亚洲国产欧美不卡在线观看| 99亚洲一区二区| 国产精品乱码久久久久久| 欧美一级视频精品观看| 蜜乳av另类精品一区二区| 亚洲精品国产品国语在线app| 亚洲图片欧美一区| 国产一区二区高清视频| 最新成人av在线| 国产精品av久久久久久麻豆网| 午夜精品一区二区三区在线| 久久免费视频一区| 亚洲美洲欧洲综合国产一区| 午夜在线视频一区二区区别| 国产一区二区三区久久久久久久久| 91久久一区二区| 国产精品女主播一区二区三区| 久久精品国产v日韩v亚洲 | 午夜一区在线| 欧美黄色一区二区| 亚洲欧美日韩成人| 欧美成人午夜影院| 亚洲伊人第一页| 欧美电影免费观看大全| 亚洲在线观看免费视频| 久久蜜桃精品| 夜夜嗨av一区二区三区免费区| 久久精品国产一区二区三| 亚洲乱码国产乱码精品精可以看| 久久成人国产精品| 亚洲精选视频在线| 久热re这里精品视频在线6| 一区二区三区色| 玖玖玖国产精品| 亚洲欧美日本视频在线观看| 欧美激情综合色综合啪啪| 午夜精品美女久久久久av福利| 欧美精品videossex性护士| 欧美一区二区三区喷汁尤物| 一区二区三区|亚洲午夜| 欧美日韩国产区一| 亚洲午夜精品视频| 欧美激情国产高清| 久久国产福利| 国产精品手机在线| 99精品视频一区| 狠狠综合久久av一区二区小说| 午夜国产精品视频免费体验区|