Abnormal termination, caused by mdrv process termination问题解决方法

问题:运行场景后,提示“Abnormal termination, caused by mdrv process termination”,服务端没有挂,仍可正常访问,且在运行场景时,没有自动重启。找下了,网上的答案如下:
转自:http://loadrunner.wetpaint.com/page/Abnormal+termination,+caused+by+mdrv+process+termination
f the LR articles. The Loadrunner vusers are run by a process called 'mdrv.exe'. Whenever this process encounters errors   due to various reasons it may terminate. Some of the possible reasons are as follows
  1. The Host machine ( Load generator) is running too many Vusers as a result of which it system resources are being maximized. ( i.e. Consistent over 90% CPU and Memory utilization). The mdrv process does not get enough resources to process the request as a result it fails
  2. If you have Custom C coding, there is a possibility of allocated memory not being freed or memory violation errors which can lead to 'mdrv process termination'.
  3. Replay the script with think time.
  4. Turn off extended log when running the script in the controller.
  5. Do not use the controller itself as the loadgenerator. i.e. have a remote LoadGenerator.
  6. Introduce iteration pacing, if running more than one iteration each vuser.
  7. Open the file C:\WinNT\wlrun7.ini in a text editor, modify the entry from: AgentMaxThreadsPerDriver=50 to AgentMaxThreadsPerDriver=20 or 10
  8. Run Agent as process instead of service Launch command prompt and navigate to C:\Program Files\Mercury\Loadrunner\Launch_service\bin and run the command magentserive -remove. This will remove the agent. Now run the command magentproc -install This will install the agent as a process.
  9. Run vusers as process instead of threads.Please go to Runtime Settings > Miscellaneous > Multithreading > RunVuser as a process.

另外,注意下负载机的连接数是否过高,往往测试TPS较高的应用或是Client本身导致连接来不及释放会引起mmdrv进程Crash。当然加入Thinktime或者Pacing Time是种办法,一般最小可设置0.1~1s,但毕竟指标不治本,需要更多的用户来测试系统最大处理能力。

你可能感兴趣的:(性能测试)