Re: [curl-loader-devel] Output understanding
Status: Alpha
Brought to you by:
coroberti
From: Aleksandar L. <al-...@no...> - 2007-05-06 07:21:36
|
On Sam 05.05.2007 22:55, Robert Iakobashvili wrote: >On 5/5/07, Aleksandar Lazic <al-...@no...> wrote: > >> A session, as in httperf defined and many $PEOPLE means, is the whole >> requests which are needed to get the full webpage loaded: >> This means when you plan to have 100 concurrent Users and you site >> have. lets say 4 components, then the server must anwer 400 requests, >> you got my point? > >OK, HTTP session or HTTP business transaction. Yep, you got the point ;-) >If this is a single url, one curl-loader client is mapped 1:1 to >libcurl handle. Libcurl handle, if my understanding is correct, has up >to 5 sockets/connections. This depend on: HTTP/1.0 or HTTP/1.1 --- HTTP/1.0 without 'Connection'-Header (=no persistant), yep one $URL/request one connection. HTTP/1.0 with 'Connection'-Header (=persistant), one $URL/request must not be one connection. HTTP/1.1 default (=persistant), one $URL/request must not be one connection. HTTP/1.1 with 'Connection'-Header close (=no persistant), one $URL/request one connection. --- I think you know this but yust for clarifing ;-) And for this the behaviour of client and server is different per session. What I mean is: The benchmark tool should be able to handle all this 4 scenarios in a proper way, also to force some $COMPRESSION-respone from the server, this is possible with curl-loader, afaik with the CUSTOM_HEADER ;-) I don't know what's the best way to give the customer the possibility to say how many requests should go thru one connection, there are many possibilities ;-) >Fetching a single url may lead to multiple requests, GETs, POSTs, >redirections, more GETs and POSTs. They are all reflected in statistics >per client. Yep. >Talking about 3-5 different independent urls (without redirections), >one can specify all them in a batch file configuration file (test plan) >and they all will be fetched. We call it cycle of fetching. There is >some statistics in clients dump *.ctx file with numbers of cycles, >etc. Sure, it may be improved/enhanced. > >Which counters you think may be of interest here? Well I don't know how modular and flexible the curl-loader is and how many times you have, I will try to show some options. 1.) a new config options e.g.: UAS_SESSION_MODE=([Yy]|http1|http1-pers|http11|http11-nopers) UAS_SESSION_CLIENTS=$NUM UAS_SESSION_PER_CLIENT_REQUESTS=$NUM <= this is only used if SESSION_MODE is htt1-pers|http11 UAS_SESSION_FILE=$PATH <= here are the urls for one session 2.) curl-loader assume that all requests to one server should be counted as session and after the run curl-loader calculate the RPS and divide it thru the $URLS, it's not the best but I think a possible way. 3.) There is a extra counter and a simple FLAG like UAS_URL_SESSION=(1|0) and after the run curl-loader calculates based on this flag and counter how many session are possible. 4.) There could be some other ways ;-)) I think the httperf is nice for such thing and a good input for some of this session thing ;-), but the development is stop, it looks to me, and he is based on select(). What do you think about this?! Cheers Aleks |