佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程

借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程

熱門標(biāo)簽:硅谷的囚徒呼叫中心 智能手機(jī) 阿里云 美圖手機(jī) 使用U盤裝系統(tǒng) 網(wǎng)站建設(shè) 檢查注冊(cè)表項(xiàng) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式

我們都知道Jmeter提供了原生的結(jié)果查看,既然有原生的查看結(jié)果,為什么還要多此一舉使用其他工具進(jìn)行查看呢,除了查看內(nèi)容豐富外還有最主要的原因:
Jmeter提供的查看結(jié)果插件本身是比較消耗性能的,所以在正式壓測(cè)中應(yīng)當(dāng)禁用。但是我們又需要在腳本運(yùn)行時(shí)實(shí)時(shí)查看結(jié)果,這時(shí)就需要借助外在工具實(shí)現(xiàn)。
除此之外,在真實(shí)壓測(cè)過程中還需要注意Jmeter圖形化模式只適合調(diào)試使用,不要進(jìn)行壓測(cè)。圖形化的壓測(cè)方式會(huì)消耗較多的客戶端性能,在壓測(cè)過程中容易因?yàn)榭蛻舳藛栴}導(dǎo)致內(nèi)存溢出。官方也給出了提示通過命令行執(zhí)行。執(zhí)行命令:

jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

-n 表示在非 GUI 模式下運(yùn)行 JMeter;

-t 表示要運(yùn)行的 JMeter 測(cè)試腳本文件,一般是 jmx 結(jié)尾的文件;

-l 表示記錄結(jié)果的文件,默認(rèn)以 jtl 結(jié)尾;-e 表示測(cè)試完成后生成測(cè)試報(bào)表;

-o 表示指定的生成結(jié)果文件夾位置。

實(shí)現(xiàn)原理

接下來(lái)詳解借助 docker 使用 InfluxDB 和 Grafana 搭建性能可視化監(jiān)控平臺(tái)。
InfluxDB概念:InfluxDB是一款用Go語(yǔ)言編寫的開源分布式時(shí)序、事件和指標(biāo)數(shù)據(jù)庫(kù),無(wú)需外部依賴。該數(shù)據(jù)庫(kù)現(xiàn)在主要用于存儲(chǔ)涉及大量的時(shí)間戳數(shù)據(jù),如DevOps監(jiān)控?cái)?shù)據(jù),APP metrics, loT傳感器數(shù)據(jù)和實(shí)時(shí)分析數(shù)據(jù)。
InfluxDB概念特點(diǎn):

  • 無(wú)結(jié)構(gòu)(無(wú)模式):可以是任意數(shù)量的列;
  • 可以設(shè)置metric的保存時(shí)間;
  • 支持與時(shí)間有關(guān)的相關(guān)函數(shù)(如min、max、sum、count、mean、median等),方便統(tǒng)計(jì);
  • 支持存儲(chǔ)策略:可以用于數(shù)據(jù)的刪改。(influxDB沒有提供數(shù)據(jù)的刪除與修改方法);
  • 支持連續(xù)查詢:是數(shù)據(jù)庫(kù)中自動(dòng)定時(shí)啟動(dòng)的一組語(yǔ)句,和存儲(chǔ)策略搭配可以降低InfluxDB的系統(tǒng)占用量;
  • 原生的HTTP支持,內(nèi)置HTTP API;
  • 支持類似sql語(yǔ)法;
  • 支持設(shè)置數(shù)據(jù)在集群中的副本數(shù);
  • 支持定期采樣數(shù)據(jù),寫入另外的measurement,方便分粒度存儲(chǔ)數(shù)據(jù)。

Grafana概念:一個(gè)開源軟件,擁有豐富的指標(biāo)儀表盤和圖形編輯器,適用Graphite, Elasticsearch, OpenTSDB, Prometheus,InfluxDB。簡(jiǎn)單點(diǎn)說就是一套開源WEB可視化平臺(tái)。

JMeter引入Backend Listener將在壓測(cè)過程中實(shí)時(shí)發(fā)送統(tǒng)計(jì)指標(biāo)數(shù)據(jù)發(fā)送到Influxdb數(shù)據(jù)庫(kù),Grafana(開源的WEB可視化看板)數(shù)據(jù)源連接到Influxdb,創(chuàng)建可視化看板,并實(shí)時(shí)獲取到測(cè)試指標(biāo)數(shù)據(jù)。

安裝InfluxDB

docker 下進(jìn)行安裝
拉取influxdb鏡像:docker pull influxdb
運(yùn)行influxdb容器:docker run --name my_influxdb -p 8086:8086 influxdb

進(jìn)入容器:docker exec -it 容器id /bin/bash

創(chuàng)建數(shù)據(jù)庫(kù) jmeter

influx
show databases;
create database jmeter;
show databases;
use jmeter;
select * from jmeter;
exit;

安裝Grafana

拉取grafana鏡像:docker pull grafana/grafana

運(yùn)行容器:docker run --name my_grafana -p 3000:3000 grafana/grafana

訪問grafana:http://ip:3000

用戶名與密碼都是"admin"

進(jìn)入后添加數(shù)據(jù)庫(kù)

進(jìn)入后對(duì)數(shù)據(jù)庫(kù)進(jìn)行配置

保存并且測(cè)試

配置展示模板

模板比較豐富,可以預(yù)覽進(jìn)行查看,選擇合適的進(jìn)行下載
下載地址:https://grafana.com/grafana/dashboards

下載json文件

準(zhǔn)備導(dǎo)入

將下載下來(lái)的json文件導(dǎo)入之后即可。

設(shè)置完成后進(jìn)入面板

在此可設(shè)置刷新頻率

配置Jmeter

創(chuàng)建Jmeter腳本。

設(shè)置后端監(jiān)聽器

運(yùn)行腳本后可查看結(jié)果

到此這篇關(guān)于借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的文章就介紹到這了,更多相關(guān)Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

標(biāo)簽:煙臺(tái) 通遼 湘潭 黃山 懷化 湖北 賀州 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《借助Docker搭建JMeter+Grafana+Influxdb監(jiān)控平臺(tái)的詳細(xì)教程》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    霸州市| 高碑店市| 天全县| 新营市| 四子王旗| 密云县| 临洮县| 襄城县| 平乡县| 青铜峡市| 安龙县| 茂名市| 栖霞市| 温州市| 左云县| 共和县| 苏尼特右旗| 耿马| 临朐县| 化隆| 忻州市| 长春市| 泗洪县| 增城市| 昌黎县| 庆阳市| 全椒县| 蚌埠市| 唐山市| 新源县| 扎囊县| 湛江市| 开鲁县| 芒康县| 政和县| 林芝县| 县级市| 江津市| 栾城县| 衡阳市| 田林县|