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
|