真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

jvm-sandbox-repeater環(huán)境搭建-創(chuàng)新互聯(lián)

引流回放這個(gè)技術(shù)現(xiàn)在真的越來(lái)越成為了很多公司測(cè)試同學(xué)必備的一個(gè)工具了。當(dāng)然引流回放的技術(shù)有很多,比如下來(lái)會(huì)提到的jvm-sandbox-repeater。 當(dāng)然你也可以通過日志分析解析的方式去獲取到請(qǐng)求返回的信息等。因?yàn)閯偮犨^testerhome開發(fā)者大會(huì),好幾個(gè)主題也討論到了引流回放,而現(xiàn)在大熱的引流回放就是 https://github.com/alibaba/jvm-sandbox-repeater

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)肅北,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):18982081108

引流回放面向的目標(biāo)人群 - 面向測(cè)試開發(fā)工程師

  • 線上有個(gè)用戶請(qǐng)求一直不成功,我想在測(cè)試環(huán)境Debug一下,能幫我復(fù)現(xiàn)一下嗎?
  • 壓測(cè)流量不知道怎么構(gòu)造,數(shù)據(jù)結(jié)構(gòu)太復(fù)雜,壓測(cè)模型也難以評(píng)估,有什么好的辦法嗎?
  • 不想寫接口測(cè)試腳本了,我想做一個(gè)流量錄制系統(tǒng),把線上用戶場(chǎng)景做業(yè)務(wù)回歸,可能會(huì)接入很多服務(wù)系統(tǒng),不想讓每個(gè)系統(tǒng)都進(jìn)行改造,有好的框架選擇嗎?
  • 我想做一個(gè)業(yè)務(wù)監(jiān)控系統(tǒng),對(duì)線上核心接口采樣之后做一些業(yè)務(wù)校驗(yàn),實(shí)時(shí)監(jiān)控業(yè)務(wù)正確性。

我們就按照官網(wǎng)的操作步驟來(lái)吧。不過有些地方我們得適當(dāng)修改下,不確定這些是否適合其他同學(xué)哈。

1. 安裝sandbox以及repeater
curl -s https://github.com/alibaba/jvm-sandbox-repeater/releases/download/v1.0.0/install-repeater.sh | sh

注: 這種方式安裝的的repeater 沒有辦法被sandbox 識(shí)別出來(lái),導(dǎo)致repeater的插件一直沒辦法被加載

所以推薦是直接通過拉取repeater的源碼

git clone https://github.com/alibaba/jvm-sandbox-repeater.git

cd jvm-sandbox-repeater/bin

sh install-local.sh

install-local.sh

#!/usr/bin/env bash

# repeater's target dir
REPEATER_TARGET_DIR=../target/repeater

# exit shell with err_code
# $1 : err_code
# $2 : err_msg
exit_on_err()
{[[ ! -z "${2}" ]] && echo "${2}" 1>&2
    exit ${1}
}

# package
sh ./package.sh || exit_on_err 1 "install failed cause package failed"

# extract sandbox to ${HOME}
curl -s https://ghproxy.com/https://github.com/alibaba/jvm-sandbox-repeater/releases/download/v1.0.0/sandbox-1.3.3-bin.tar | tar x -C ${HOME} || exit_on_err 1 "extract sandbox failed"

# copy module to ~/.sandbox-module
mkdir -p ${HOME}/.sandbox-module || exit_on_err 1 "permission denied, can not mkdir ~/.sandbox-module"
cp -r ${REPEATER_TARGET_DIR}/* ${HOME}/.sandbox-module  || exit_on_err 1 "permission denied, can not copy module to ~/.sandbox-module"

install-local.sh的腳本如上,其他它與上述的sh腳本的區(qū)別在于 repeater它是直接通過源碼打包的,其他都是一樣的,所以只能有理由懷疑的是repeater的問題。導(dǎo)致了插件沒有辦法被加載。具體可以看下,我通過官方的腳本安裝以及通過源碼安裝后執(zhí)行sandbox.sh的日志差異

在這里插入圖片描述

這個(gè)是根據(jù)官方的方式安裝的,加載完module-jar以后就直接進(jìn)行端口綁定了。

在這里插入圖片描述

通過源碼打包的方式,就會(huì)出現(xiàn)加載module-lib的邏輯,所以這個(gè)就是具體的差異的地方,這個(gè)問題會(huì)直接repeater完全沒有啟動(dòng)。這個(gè)原因下來(lái)再說為啥會(huì)有這個(gè)情況

先解釋下上邊的腳本,腳本的主要作用就是安裝sandbox以及repeater, 而安裝的路徑分別是在 ~/sandbox 與 ~/.sandbox-module 。

2. 修改repeater的配置

這里我們先采用standalone的模式,所以我們需要修改~/.sandbox-module/cfg/repeater.properties的配置信息

在這里插入圖片描述

改為true. 至于其上面的那些配置想都是配合repeater-console一起使用的,所以我們暫時(shí)可以先不用管

同時(shí)再修改repeater-config.json, 它默認(rèn)是在~/.sandbox-module/cfg/repeater-config.json

具體配置含義參見:RepeaterConfig.java

這里我們將配置修改為如下:

{"degrade": false, 
  "exceptionThreshold": 1000,
  "httpEntrancePatterns": [
    "^/greeting.*$", // 這里主要是錄制接口為greeting的
  ],
  "javaEntranceBehaviors": [
  ],
  "javaSubInvokeBehaviors": [
  ],
  "pluginIdentities": [
    "http",
    "mybatis",
    "ibatis",
    "dubbo-provider",
    "dubbo-consumer"
  ],
  "repeatIdentities": [
    "java",
    "http"
  ],
  "sampleRate": 10000,
  "useTtl": true
}
啟動(dòng)被測(cè)服務(wù)

克隆源碼

git clone https://github.com/chenhengjie123/gs-rest-service.git

這個(gè)項(xiàng)目是在看其他帖子看到的,是個(gè)開源的demo,我在這也引用下。

進(jìn)入到項(xiàng)目路徑:/gs-rest-service/complete,使用**mvn install**命令,把項(xiàng)目中打好的包,放到本地倉(cāng)庫(kù)

在這里插入圖片描述

在 target 目錄下,可以看到,生成了一個(gè)jar包,如下所示

在這里插入圖片描述

在 target 目錄下,使用命令java -jar gs-rest-service-0.1.0.jar啟動(dòng)項(xiàng)目,出現(xiàn)如下所示內(nèi)容,項(xiàng)目啟動(dòng)成功

在這里插入圖片描述

記錄下這個(gè)pid,下來(lái)會(huì)用到

獲取到項(xiàng)目PID后,到 sandbox 目錄~/sandbox/bin下,使用命令./sandbox.sh -p 53972 -P 12580,運(yùn)行命令后,出現(xiàn)如下內(nèi)容,說明成功

在這里插入圖片描述

也可以通過查看sandbox日志來(lái)確定,是否有啟動(dòng)成功,日志如下所示:

在這里插入圖片描述

參數(shù)說明

  • p 被錄制應(yīng)用進(jìn)程號(hào)
  • P repeater啟動(dòng)端口,這個(gè)每個(gè)人定義的都可以不同,一定是一個(gè)未占用的端口

attach 模式下,錄制應(yīng)用名和錄制環(huán)境這兩個(gè)參數(shù)都會(huì)被默認(rèn)為 unknown。這個(gè)應(yīng)用名與錄制環(huán)境在standalone作用不大,如果是在repeater-console上就比較重要,用來(lái)區(qū)分不用應(yīng)用的流量以及配置使用。

attach關(guān)閉

運(yùn)行命令**./sandbox.sh -p 53972 -S**,出現(xiàn)如下內(nèi)容,jvm-sandbox關(guān)閉成功

jvm-sandbox[default] shutdown finished.
模擬請(qǐng)求

在這里插入圖片描述

此時(shí)我們可以看下repeater的日志,如下:

在這里插入圖片描述

repeater的日志默認(rèn)也是在sandbox相同的路徑下~/logs/sandbox/repeater

同時(shí)在~/.sandbox-module/目錄下也會(huì)多出一個(gè)repeater-data里面也記錄下這此錄制的內(nèi)容,只是通過了序列化保存了。

在這里插入圖片描述

問題

前面說到的 repeater的問題下來(lái)會(huì)單獨(dú)來(lái)說明這個(gè)問題

另外一個(gè)就是github的下載經(jīng)常容易失敗,建議大家可以參考上邊的鏈接,做一個(gè)加速,在github的鏈接上增加一個(gè) https://ghproxy.com/ 即可。

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧


文章標(biāo)題:jvm-sandbox-repeater環(huán)境搭建-創(chuàng)新互聯(lián)
文章來(lái)源:http://weahome.cn/article/jheid.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部