前言 消息隊列和緩存是目前主流的中間件,我們在日常測試過程中,無論是接口還是壓力測試,都會遇到需要處理這些中間件數(shù)據(jù)的情況。本文以Redis對緩存做一個簡單的介紹,并基于Jmeter實現(xiàn)緩存數(shù)據(jù)處理。 緩存 Web系統(tǒng)通常使用數(shù)據(jù)庫來存儲數(shù)據(jù),但數(shù)據(jù)庫存取涉及到磁盤讀寫,磁盤IO讀寫速度明顯慢于內存讀寫速度,當并發(fā)量很大的時候,很容易成為系統(tǒng)瓶頸。為了提高數(shù)據(jù)的存取速度,避免系統(tǒng)瓶頸,越來越多的Web系統(tǒng)引入了緩存數(shù)據(jù)庫。目前主流的緩存數(shù)據(jù)庫有Redis和MongoDB,Jmeter通過擴展插件支持這兩種內存數(shù)據(jù)庫的數(shù)據(jù)庫讀取。本文以Redis為例,介紹如何使用Jmeter讀取和使用Redis數(shù)據(jù)。 Redis服務和客戶端安裝 1. 官網(wǎng)下載Redis 安裝文件 https://github.com/microsoftarchive/redis/releases 2. 在Windows平臺上雙擊redis-server.exe文件即可啟動Redis服務,控制臺出現(xiàn)如下所述提示,說明Redis-Server啟用成功 3. 下載安裝Windows客戶端,雙擊運行出現(xiàn)如下界面;通過客戶端在Redis數(shù)據(jù)庫中添加數(shù)據(jù),本示例添加了一個List類型的數(shù)據(jù),key=testList,值有a,b,c 三種 Redis是內存數(shù)據(jù)庫,和Mysql這類關系型數(shù)據(jù)的表結構不同,Redis有如下6種數(shù)據(jù)結構: String:Key-Value管理鍵值對. Set:String 類型的無序集合,集合成員是唯一的,集合中不能出現(xiàn)重復的數(shù)據(jù)。 List:字符串列表,按照插入順序排序。 Hash:Redis hash 是一個string類型的field和value的映射表,hash特別適合用于存儲對象。 Sorted Set:有序集合和集合一樣也是string類型元素的集合, 不同的是每個元素都會關聯(lián)一個double類型的分數(shù),redis正是通過分數(shù)來為集合中的成員進行從小到大的排序。 Jmeter使用Redis 打開JMeter Plugins Manager,下載Jmeter Redis Data Set插件 重啟Jmeter以后,可以在配置元件中發(fā)現(xiàn)新增組件 jp@gc-Redis Data Set,Jmeter的Redis Data Set目前尚有一些限制,僅支持List和Set類型的數(shù)據(jù);如果要處理其他類型的數(shù)據(jù),可以通過Beanshell Sampler來編寫代碼讀取Redis數(shù)據(jù) Redis Data Set可以實現(xiàn)讀取Redis中的數(shù)據(jù),并將數(shù)據(jù)存儲為變量供后續(xù)使用,其中關鍵的配置有: Redis Key:對應Redis數(shù)據(jù)庫中的Key Variable Name:Redis數(shù)據(jù)庫中取出數(shù)據(jù)后存儲的變量,可以供Jmeter后續(xù)的腳本使用 Delimiter:分隔符,默認是 Data Source Type: Redis數(shù)據(jù)類型,此處僅支持List和Set Recycle data on use: 當數(shù)據(jù)遍歷完時是否重新開始循環(huán) Connection Configuration:Redis 服務器的配置信息,包括Redis服務器的IP,端口,超時時間,密碼和數(shù)據(jù)庫名 Redis Pool Configuration:Redis的連接池配置 本示例讀取了本地Redis數(shù)據(jù)庫的testList數(shù)據(jù),并且取出數(shù)據(jù)作為百度搜索的關鍵詞 點擊運行,腳本能從Redis數(shù)據(jù)庫中取出數(shù)據(jù),并作為后續(xù)Http請求的輸入?yún)?shù) Jmeter功能非常強大,尤其是對多種中間件的支持,小伙伴們趕緊用起來吧,預知Jmeter如何處理消息隊列,請聽下回分解。 作 者: 自動化軟件測試 出 處:微信公眾號:自動化軟件測試平臺 版權說明:歡迎轉載,但必須注明出處,并在文章頁面明顯位置給出文章鏈接 來源:https://www./content-4-780801.html |
|