From rousskov at measurement-factory.com Sun May 1 20:35:02 2016 From: rousskov at measurement-factory.com (Alex Rousskov) Date: Sun, 1 May 2016 14:35:02 -0600 Subject: Client process killed by kernel In-Reply-To: References: Message-ID: <57266876.9010607@measurement-factory.com> On 04/29/2016 03:17 PM, perf tester wrote: > Web Polygraph client (4.9.0) is terminated by kernel due to memory > exhaustion if the test is run for longer periods. If I add more memory > to the client, the test can run for another few hours and eventually got > killed. Are there any known memory leaks? Appreciate your help. The first thing to check is whether your test is queuing more and more robot transactions because of the configured open connection limit (Robot.open_conn_lmt). Look at the "concurrent HTTP transaction level" graph in the generated HTML report or use polygraph-ltrace to plot wait.level.last statistics over time. If the number of queued transactions grows over time, then this is not a memory leak but memory exhaustion -- you essentially told Polygraph to use more memory than you have. You can combat that problem by decreasing load, configurating Robot.wait_xact_lmt, increasing/removing open_conn_lmt, and/or adjusting other workload parameters. HTH, Alex. From unjc.email at gmail.com Mon May 2 16:09:50 2016 From: unjc.email at gmail.com (unjc email) Date: Mon, 2 May 2016 12:09:50 -0400 Subject: Run-time address creation in AWS Message-ID: Hello there, I am recently working on a project that requires performance testing a service in AWS. To my knowledge, AWS currently does not support IP broadcast and multicast. The real-time IP-alias creation does not seem working in AWS like normal physical environment. ( http://www.web-polygraph.org/docs/userman/address.html). I am curious to know if anyone has similar experience and has figured out a solution. Any comment or suggest will be greatly appreciated. thanks and best regards, Jacky -------------- next part -------------- An HTML attachment was scrubbed... URL: From sanjeevirangan at gmail.com Wed May 4 07:16:00 2016 From: sanjeevirangan at gmail.com (Sanjeevi Rangan) Date: Wed, 4 May 2016 12:46:00 +0530 Subject: WPG client - Ignoring 3XX responses Message-ID: Hi, In most of the tests I do, I see the contribution of 'status code 302' is relatively high in the "HTTP Relpy Status traffic stream table" generated by the reporter. While I don't know what proxy is playing with this 302s, is there a way to tell the WPG client to ignore the 3XX responses and not to follow 3xx URLs during the test? Would really appreciate any suggestions on this. If it is possible, will there be any impact in the report that reporter would generate if we ignore the 3xx responses? Thanks in advance! -- *Regards,* *Sanjeevi Rangan* -------------- next part -------------- An HTML attachment was scrubbed... URL: From rousskov at measurement-factory.com Wed May 4 20:08:07 2016 From: rousskov at measurement-factory.com (Alex Rousskov) Date: Wed, 4 May 2016 14:08:07 -0600 Subject: Run-time address creation in AWS In-Reply-To: References: Message-ID: <572A56A7.4090005@measurement-factory.com> On 05/02/2016 10:09 AM, unjc email wrote: > I am recently working on a project that requires performance testing a > service in AWS. OK. > To my knowledge, AWS currently does not support IP > broadcast and multicast. Why is that relevant to your question? > The real-time IP-alias creation does not seem > working in AWS like normal physical environment. Lots of folks run Polygraph on virtual machines, so virtualization as such is probably not the cause. > I am > curious to know if anyone has similar experience and has figured out a > solution. Any comment or suggest will be greatly appreciated. Are you able to create aliases on the loopback interface using the polygraph-aka tool? What alias creation errors are you getting? Alex. From rousskov at measurement-factory.com Thu May 5 06:30:32 2016 From: rousskov at measurement-factory.com (Alex Rousskov) Date: Thu, 5 May 2016 00:30:32 -0600 Subject: Run-time address creation in AWS In-Reply-To: References: <572A56A7.4090005@measurement-factory.com> Message-ID: <572AE888.2050003@measurement-factory.com> On 05/04/2016 05:00 PM, unjc email wrote: > In normal Linux machine, (correct me if I am wrong) the IP addresses of > IP-alias could be recognized by other machines in the same subnet via > broadcasting multicast packets. I believe such "recognition" is usually done via regular ARP traffic, not IP broadcast or multicast, but this is not my area of expertise. More importantly, using [large number of] IP aliases on external interfaces is often a bad idea because it may cause various networking problems, including ARP floods and table overflows. > I am able to create the aliases on the loopback interfaces using > polygraph-aka tool with no error; Great. > but TCP packets are not able to be > routed back to the EC2 instance that runs web-polygraph client. If all TCP pairs (client+server) in your test are on the same subnet, then you should have no problem setting up routes for loopback-bound robots to reach loopback-bound servers (via the proxy if you are testing a proxy). The old PolyMix-4 workload documentation explains how that can be done (notice how all robots and servers use lo0 interface): http://www.measurement-factory.com/docs/PolyMix-4/#Sect:3 Polygraph cannot setup routes automatically (yet?), but they usually boil down to one or two "route" commands per drone and are easily scripted if needed because the routes are usually "stable" across tests even if the exact set of robot or server IP addresses changes. HTH, Alex.