1 簡介
當執行一個場景時,Controller把場景中的每個用戶配到負載生成器(Load generator)。
所謂的負載生成器(Load Generator)就是執行Vuser腳本,運行Vuser模擬真實用戶操作的機器。
默認情況下使用本地的負載生成器來運行腳本,但是模擬用戶行為也需要消耗一定的資源,所以在一台電腦上無法模擬大量的虛擬用戶,這個時候調用多個Load Generators來完成大規模的性能負載。
2 運行模式設置
Load Generator的核心是MMDRV.EXE進程,MMDRV.EXE負責運行腳本模擬用戶行為,該程序支持進程或線程的方式,通過Runtime Settings即可設置,如下,設置線程模式

大多數情況,使用進程方式時一個Vuser會占用接近3MB的內存,而使用線程方式時一個Vuser大概只占用了200KB的內存。為了保證負載生成有效性,請在真正實施性能測試前先測試一個負載器是否存在硬件瓶頸(生成負載時的CPU,內存,帶寬占用情況等),確保負載器自身不會成為瓶頸,其CPU和內存的使用率最好不超過80%
3 添加負載生成器
點擊Load Generator按鈕
(或者Scenario->Load generators), 在打開的Load Generators對話框中點擊Add並輸入你要添加的負載生成器的詳細信息

或者如下

點擊添加Add
注意:
1.這里的名稱可以是ip(本地、遠程),也可以計算機名、localhost(本機)
2.如果Temporary directory目錄為空,那么運行時, LoadRunner存儲臨時文件在負載生成器上,由負載生成器變量TEMP、TMP變量指定的臨時目錄.
3.要勾選Enable load generator to take part in the scenario,啟用負載生成器,否則應該下面的管理器中Enable選擇定的生成器,反過來,如果某個開啟的負載生成器對於某個特定場景不可用,可臨時禁用負載生成器,而不必要把它從列表移除。
點擊More

添加后

點擊Connect

添加該引擎后,可以單擊Connect按鈕,鏈接負載生成器,如果出現Ready則說明正確連接,該負載生成服務器可以使用,否則就需要檢驗下錯誤出在哪里。
說明:
Windows下,如果排除了防火牆的問題后,Load Generator無法鏈接一般是由於Load Generator的權限配置錯誤導致,具體解決方法如下:
1) HP->LoadRunner->LoadRunner Agent Runtime Setting……


說明:
Allow virtual users to run on this machine without user login
處輸入登陸信息,這樣可以讓遠程的Controller無須登陸就直接連接到這個Load Generator,這里需要輸入本地電腦的賬號,這樣可以解決無法遠程訪問負載引擎的錯誤。
這里的Domain也就是計算機全名
2) 輸入域,帳號,密碼,點擊OK

3 為腳本選擇負載生成器
如圖,點擊下拉三角,選擇要添加的負載生成器

4 關於遠程負載生成器
通過設置多個Load Generator可以有效的增加負載量,解決單台電腦無法模擬大量負載的問題。
負載均衡
負載均衡最終通過用戶在被請求負載生成器之間分發負載,來保證一個准確的負載測試。
當某個load generator的CPU超負荷使用,Controller停止在超負荷的load生成器上加載虛擬用戶,並自動在其它參與了場景的生成器中分發虛擬用戶,如果沒有其它負載生成器,那么Controller會停止加載虛擬用戶。
Laod Generators管理對話框中的圖標變化表明了CPU的使用狀態: 當負載生成器的CPU使用變得有問題時,負載生成器左邊圖標包含一個黃色條;當超負載時,圖標包含一個紅色條;綠色說明負載生成器有空余的資源。
注:據說負載平衡僅在手工場景的百分比模式和以目標為導向的場景中可用。??有待驗證
1. 安裝負載生成器
要使用遠程負載生成器,必須在遠程負載機器上安裝負載生成器,windows下,下載.iso文件,加載,點擊setup,選擇組件LoadGenerator安裝

2. 開啟遠程負載生成器的LoadRunner Agent服務
Start > Programs > LoadRunner > LoadRunner Agent Process
說明:
當場景開始運行時,Controller會將腳本傳到各個負載生成器上,等運行結束后,各個負載生成器的日志會被Controller回收。
