zoukankan      html  css  js  c++  java
  • loadrunner 场景设计-负载生成器管理


    场景设计-负载生成器管理

    by:授客 QQ1033553122

    1  简介

    当执行一个场景时,Controller把场景中的每个用户配到负载生成器(Load generator)

    所谓的负载生成器(Load Generator)就是执行Vuser脚本,运行Vuser模拟真实用户操作的机器。

     

    默认情况下使用本地的负载生成器来运行脚本,但是模拟用户行为也需要消耗一定的资源,所以在一台电脑上无法模拟大量的虚拟用户,这个时候调用多个Load Generators来完成大规模的性能负载。

     

    2  运行模式设置

    Load Generator的核心是MMDRV.EXE进程,MMDRV.EXE负责运行脚本模拟用户行为,该程序支持进程或线程的方式,通过Runtime Settings即可设置,如下,设置线程模式

     

    loadrunner <wbr>场景设计-负载生成器管理

    大多数情况,使用进程方式时一个Vuser会占用接近3MB的内存,而使用线程方式时一个Vuser大概只占用了200KB的内存。为了保证负载生成有效性,请在真正实施性能测试前先测试一个负载器是否存在硬件瓶颈(生成负载时的CPU,内存,带宽占用情况等),确保负载器自身不会成为瓶颈,其CPU和内存的使用率最好不超过80%

     

    3  添加负载生成器

    点击Load Generator按钮loadrunner <wbr>场景设计-负载生成器管理(或者Scenario->Load generators) 在打开的Load Generators对话框中点击Add并输入你要添加的负载生成器的详细信息

    loadrunner <wbr>场景设计-负载生成器管理


     

    或者如下

    loadrunner <wbr>场景设计-负载生成器管理
    点击添加Add
    loadrunner <wbr>场景设计-负载生成器管理

     

    注意:

    1.这里的名称可以是ip(本地、远程),也可以计算机名、localhost(本机)

    2.如果Temporary directory目录为空,那么运行时, LoadRunner存储临时文件在负载生成器上,由负载生成器变量TEMPTMP变量指定的临时目录.

    3.要勾选Enable load generator to take part in the scenario,启用负载生成器,否则应该下面的管理器中Enable选择定的生成器,反过来,如果某个开启的负载生成器对于某个特定场景不可用,可临时禁用负载生成器,而不必要把它从列表移除。


    点击More

     

    loadrunner <wbr>场景设计-负载生成器管理

    添加后

    loadrunner <wbr>场景设计-负载生成器管理

     

    点击Connect

     

    loadrunner <wbr>场景设计-负载生成器管理
     

    添加该引擎后,可以单击Connect按钮,链接负载生成器,如果出现Ready则说明正确连接,该负载生成服务器可以使用,否则就需要检验下错误出在哪里。

     

    说明:

    Windows下,如果排除了防火墙的问题后,Load Generator无法链接一般是由于Load Generator的权限配置错误导致,具体解决方法如下:


    1)  HP->LoadRunner->LoadRunner Agent Runtime Setting……

    loadrunner <wbr>场景设计-负载生成器管理

    loadrunner <wbr>场景设计-负载生成器管理

    说明:

    Allow virtual users to run on this machine without user login

    处输入登陆信息,这样可以让远程的Controller无须登陆就直接连接到这个Load Generator,这里需要输入本地电脑的账号,这样可以解决无法远程访问负载引擎的错误。

    这里的Domain也就是计算机全名

    2)  输入域,帐号,密码,点击OK

    loadrunner <wbr>场景设计-负载生成器管理

     

     

     

    3  为脚本选择负载生成器

    如图,点击下拉三角,选择要添加的负载生成器

    loadrunner <wbr>场景设计-负载生成器管理

     

     

    4  关于远程负载生成器

    通过设置多个Load Generator可以有效的增加负载量,解决单台电脑无法模拟大量负载的问题。

     

    负载均衡

    负载均衡最终通过用户在被请求负载生成器之间分发负载,来保证一个准确的负载测试。

    当某个load generatorCPU超负荷使用,Controller停止在超负荷的load生成器上加载虚拟用户,并自动在其它参与了场景的生成器中分发虚拟用户,如果没有其它负载生成器,那么Controller会停止加载虚拟用户。

    Laod Generators管理对话框中的图标变化表明了CPU的使用状态: 当负载生成器的CPU使用变得有问题时,负载生成器左边图标包含一个黄色条;当超负载时,图标包含一个红色条;绿色说明负载生成器有空余的资源。

    注:据说负载平衡仅在手工场景的百分比模式和以目标为导向的场景中可用。??有待验证

     

    1.  安装负载生成器

    要使用远程负载生成器,必须在远程负载机器上安装负载生成器,windows下,下载.iso文件,加载,点击setup,选择组件LoadGenerator安装

    loadrunner <wbr>场景设计-负载生成器管理


     

    2.  开启远程负载生成器的LoadRunner Agent服务

    Start > Programs > LoadRunner > LoadRunner Agent Process

     

    说明:

    当场景开始运行时,Controller会将脚本传到各个负载生成器上,等运行结束后,各个负载生成器的日志会被Controller回收。

     

     

  • 相关阅读:
    AX ERROR: Could not find my mock parent, most likely I am stale 不及格的程序员
    利用Segue在视图控制器间传值的问题 不及格的程序员
    Creating a Singleton Instance 不及格的程序员
    iPad 通知 UIKeyboardWillShowNotification 不会在keyBoard处在Undock状态下接到通知 不及格的程序员
    Why RootViewController's view is rotated Automatically by System when the app first loaded? 不及格的程序员
    如何弹出UIDatePicker最好 不及格的程序员
    jQuery开始做恶了 不及格的程序员
    what is the SEL,id and IMP,Class ,Method? 不及格的程序员
    Objectivec 字符串比较的陷井 不及格的程序员
    Unable to create any keyboard shortcuts after the iOS 6.1.3 update on iPad. 不及格的程序员
  • 原文地址:https://www.cnblogs.com/shouke/p/10158247.html
Copyright © 2011-2022 走看看