为 Web Polygraph 加载工具指定 运行 时间

Specifying run time for Web Polygraph load tool

我正在使用 Web Polygraph 负载测试工具来发出快速的 http 请求,因为它可靠、资源消耗低并且具有良好的报告。但是,我找不到任何设置让 Web Polygraph 在一定时间内达到 运行。我希望能够获得准确的报告,而不是因为向进程发送终止信号而导致的潜在失误。

我一直在阅读网络测谎仪的帮助页面,可以看到每秒的请求数是可配置的,但我没有看到对请求持续时间的支持。

我有这样的配置文件(我认为这是选项所在的位置,可能在机器人配置中):

Content SimpleContent = {
    size = exp(1KB); // response sizes distributed exponentially
    cachable = 100%;
};

Server S1 = {
    kind = "S101"; 
    contents = [ SimpleContent ];
    direct_access = contents;

    addresses = ['X.X.X.X' ];
};

// a primitive robot
Robot R1 = {
    kind = "R101";
        req_rate = 100/sec;
        interests = [ "foreign" ];
        foreign_trace = "/home/x/trace.urls";
    pop_model = { pop_distr = popUnif(); };
    recurrence = 100% / SimpleContent.cachable; 

    origins = S1.addresses;
    addresses = ['X.X.X.X' ];
};

我希望能够设置一些持续时间,比如 40 分钟,我可以让 R1 机器人在 40 分钟内每秒请求 100 页。

我从网络测谎仪支持处得到了答复。为了将来参考,这可以通过 Phase 和 Goal 对象以及对它们使用 Schedule 函数来完成。这是我收到的电子邮件的片段:

See the goal field inside the Phase object:

http://www.web-polygraph.org/docs/reference/pgl/types.html#type:docs/reference/pgl/types/Goal

http://www.web-polygraph.org/docs/reference/pgl/types.html#type:docs/reference/pgl/types/Phase

Do not forget to schedule() your phases:
http://www.web-polygraph.org/docs/reference/pgl/calls.html


Many workloads that are distributed with Polygraph include Phase
schedules. To see examples, search for "goal" in workloads/