RE: Using HAproxy in web server benchmark configuration (e.g. SPECweb)?

From: Hsin, Chih-fan <chih-fan.hsin#intel.com>
Date: Mon, 5 Jan 2009 13:22:52 -0800


Thank you for your quick response. The SPECweb2005 and diagram can be found at http://www.spec.org/web2005/docs/designdocument.html

What you described is basically correct. The primary client is a PC which does all the benchmark control stuff. There are actually several client machines that send the web request to SUT. SUT communicates with the backend simulator (which simulates the backend application server). SUT will send the web response back the corresponding client machine.

The distribution part from the real client web requests to SUT (a set of web servers) seems to be straight-forward. I can use HAproxy and use the round-robin method for now. The web responses from the web servers to the real clients should be the direct communication (without going through HAproxy). I guess, but not sure. The web responses need to have the source address as the virtual common SUT address though. Does HAproxy support this?

I am trying to see how to set up the Primary Client and Backend Simulator communications to the corresponding web server in the SUT set since the original SPECweb configuration seems to use only 1 SUT machine. I am talking to some SPECweb expert, and will update you my findings.

Do you know any other public-accepted web server benchmarks that HAproxy can be easily inserted?

Chih-fan Hsin
-----Original Message-----
From: Willy Tarreau [mailto:w#1wt.eu]
Sent: Monday, January 05, 2009 12:50 PM
To: Hsin, Chih-fan
Cc: haproxy#formilux.org
Subject: Re: Using HAproxy in web server benchmark configuration (e.g. SPECweb)?

Hi,

On Mon, Jan 05, 2009 at 12:20:40PM -0800, Hsin, Chih-fan wrote:
> Hi, have any one use HAproxy to run some web server benchmark testing?

Yes, but only in front of real applications, in order to stress those applications before putting them in production.

> I tried to see if I can use HAproxy in SPECweb2005 configuration, but
> I couldn't find a way. I want to use a set of web servers to serve as
> the System Under Test (SUT). The requests from clients to SUT can be
> distributed through HAproxy.

I'm not familiar with SPECweb2005 configuration. Do you have any pointer to a diagram ?

> However, the traffics from Primary Client and the Backend Simulator to
> SUT cannot be routed to the correct web server. At least, I didn't find
> a way yet.

From what I understand, you have a client ("primary client", PC) and a server ("backend simulator", BS), and the SUT sits in between, just like we normally bench a proxy, except that here, your SUT consists in one machine running haproxy and a handful of similar web servers to measure. Am I right ?

How do you expect the PC to choose the web server in this test ? haproxy can do roundrobin, or several other algorithms, and can as well select based on layer 7 criteria. Also, how do you want the traffic to flow back from the BS to the PC ? I assume that the BS is just a server which replies to the web servers, which in turn reply to haproxy which replies to the PC, but all that is pure guess.

Regards,
Willy Received on 2009/01/05 22:22

This archive was generated by hypermail 2.2.0 : 2009/01/05 22:30 CET