loadrunner指令碼編寫~dubbo協議(java版)
1. 目的
總結loadrunner編寫dubbo協議指令碼
2. 前提
1、熟悉Java語言,至少知道基本語法)
2、熟悉loadrunner基本操作、
3、熟悉dubbo框架(http://dubbo.io/)
3. 搭建dubbo服務
主要作用是熟悉dubbo呼叫的整個工程
1、下載dubbo小例子程式碼(連結:http://pan.baidu.com/s/1hse6bWS 密碼:jw8v)
2、下載zookeeper-3.4軟體(連結: http://pan.baidu.com/s/1boT5ka 密碼: st9p)
3、下載dubbo服務管理頁面專案(連結:
4、啟動zookeeper-3.4.5服務,進入..\zookeeper-3.4.5\bin目錄,執行zkServer.cmd指令碼
5、ecplise匯入dubbo小例子程式碼
6、開啟dubboprovider工程的applicationContext.xml配置檔案,找到
<!-- 使用zookeeper註冊中心暴露服務地址 -->
<dubbo:registry address="zookeeper://127.0.0.1:2181" />
- 1
- 2
修改address屬性值(修改為前面啟動的zookeeper地址,dubboconsumer工程亦如此)程亦如此)
7、啟動dubbo服務(確保啟動日誌無異常)
8、檢視啟動的dubbo服務
第一步:解壓dubbo服務管理頁面專案(在雲盤下載)在tomcat容器中的webapps目錄中,如下圖:
第二步:修改dubboadmin\WEB-INF\dubbo.properties檔案
第三步:啟動tomcat
第四步:訪問dubbo服務管理頁面。輸入http://localhost:8080/dubboadmin/,進入
9、呼叫dubbo消費者(檢視呼叫結果)
4. 設定環境變數
編寫loadrunner指令碼作為dubbo消費者呼叫dubbo服務者(測試loadrunner指令碼時,只需要啟dubboprovider工程的dubbo服務)
1、開啟HP Virtual User Generator介面,點選File選單,彈出New Virtual User對話方塊
2、選擇New Single Protocol Script圖示,選擇Java Vuser,點選【Create】按鈕
3、點選Vuser選單,點選Run-time Setting子選單,彈出Run-time Setting對話方塊。
4、選擇ClassPath選單,上傳jar檔案
第一步:設定JDK目錄地址
第二步:上傳dubbo消費端的jar檔案(在dubboconsumer\WebRoot\WEB-INF\lib目錄下)即可。
5. 編寫指令碼
/*
* LoadRunner Java script. (Build: _build_number_)
*
* Script Description:
*
*/
import lrapi.lr;
import com.alibaba.dubbo.config.ApplicationConfig;
import com.alibaba.dubbo.config.ReferenceConfig;
import com.unj.dubbotest.provider.DemoService;
public class Actions
{
//dubbo服務地址、版本號、服務名或者介面去dubbo服務管理頁面取得,參考(8、檢視啟動的dubbo服務)
private final String ID = "ID";
//dubbo服務地址
private final String URL = "dubbo://127.0.0.1:20880";
//版本號
private final String VERSION = "1.0.0";
//服務名或者介面名
private final String SERVICE_NAME = "com.unj.dubbotest.provider.DemoService";
private Object object;
public int init() throws Throwable {
ApplicationConfig application = new ApplicationConfig();
application.setName("hehe_consumer");
ReferenceConfig reference = new ReferenceConfig();
reference.setApplication(application);
reference.setId(ID);
reference.setVersion(VERSION );
reference.setInterface(SERVICE_NAME);
reference.setUrl(URL);
object = reference.get(); //
return 0;
}//end of init
public int action() throws Throwable {
DemoService demoService = (DemoService)object;
String hello = demoService.sayHello("tom");
System.out.println(hello);
return 0;
}
public int end() throws Throwable {
return 0;
}//end of end
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60