HP Loadrunner 支持许多协议,如 http/https、SAOP、Oracle NCA 等。它还具有服务器监视器,能够为许多不同的服务器生成服务器统计信息。Loadrunner 背后的技术是什么?Loadrunner VUgen 和 Loadrunner 控制器之间的远程调用使用什么协议?
4 回答
控制器似乎是用 Delphi 或 Borland 的古老(现已消失)C 变体编写的。
VUgen 似乎是一个原生 C 应用程序,编辑器是 SlickEdit(参见http://en.wikipedia.org/wiki/SlickEdit)。
VUGen 中的 C 解释器不一定是 SlickEdit 的 Slick-C,但我很确定它是许可的商业产品。
控制器和 VUGen 创建的 LR 测试之间的在线通信协议可能是专有的,我认为是基于 RPC 的。您可以挖掘管理文档,其中记录了所需的开放端口,这可能会提供足够的提示来猜测协议。
C/C++
VUGEN 和控制器不通信:负载生成器和控制器通信。它是一个自定义协议,在测试窗口期间支持文件传输以及控制器和负载生成器之间的握手。
如果您深入了解 LoadRunner 的内部,您会发现许多有趣的部分,包括与 VUGEN 前端的 SlickEdit 相关联的部分。查看文件,自述文件是许可证文档,它将告诉您很多有关 LoadRunner 构建在其之上的架构组件的信息。
您指的是基于不同技术构建的不同产品/应用程序。对您所要求的内容的一些评论
我认为 VUGen 和 Controller 之间没有任何调用。VUGen 在协议级别上工作,它的输出是一个带有资源的脚本(静态 zip 文件)。Controller 将 zip 文件作为输入并执行在 Controller 本身中定义的场景。在 Controller 中运行测试时,不需要任何 API 调用,甚至不需要安装 VUGen
从服务器收集统计数据通常通过 SiteScope for Loadrunner 完成。通过查看文件夹和文件,您可以很容易地了解它是用哪种语言开发的。
它是封闭源代码,因此实际上并没有任何公开证据证明这样的事情。不过,我最好的猜测是 C(#?)。