You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Mohan2005 <mo...@roomsnet.com> on 2006/07/04 07:32:12 UTC

"Busy" in jkmanager

Dear All:

Please explain what this "Busy" number is in jkmanager and its significance
to the load balancer.

Thanks in advance.
Mohan
-- 
View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5162174
Sent from the Tomcat - User forum at Nabble.com.

Re: "Busy" in jkmanager

Posted by Mohan Wickramasinghe <mo...@roomsnet.com>.
Thank you very much for your clarifications. Much appreciated.

> Request = HTTP Request in progress
>
> Load balancing only uses Busy counter when the "method" attribute of the
> lb worker is set to "B" in workers.properties. In this case the lb
> worker always routes a request to the worker with smallest Busy counter
> at the times the request has been received.
>
> If the method is not "B", the value is only shown for
> monitoring/informational purposes.
>
> Mohan2005 schrieb:
>> Thank you very much for that answer.
>>
>> When you say 'Requests' does that mean the number of objects rendered
>> through that particular tomcat node ?
>>
>> And how does the load balancing mechanism use the 'Busy' factor ?
>>
>> Thanks
>> Mohan
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


Regards
Mohan Wickramasinghe


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Mohan Wickramasinghe <mo...@roomsnet.com>.
Thank you sir, for helping us again.
> Mohan2005 wrote:
>> Specifies what method load balancer is using for electing best worker.
>> If
>> method is set to R[equest] balancer will use number of requests to find
>> the
>> best worker. If set to T[raffic] balancer will use the network traffic
>> between JK and Tomcat to find the best worker. If set to B[usyness]
>> balancer
>> will pick the worker with the lowest current load, based on how many
>> requests the worker is currently serving. This number is divided by the
>> workers lbfactor, and the lowest value (least busy) worker is picked.
>>
>> And from your previous post you said..
>> and I quote..
>>
>> "Busy=number of parallel requests being processed for a worker at that
>> point
>> of time."
>> and where "request = HTTP Request in progress"
>>
>> Please clarify the difference between the 'Request' method and the
>> 'Busy'
>> method you had defined.
>
> All statements are true, but maybe confusing: For method "B" we only
> take into account the requests, that are being processed at the moment
> the next balancing decision has to be made (i.e. the next request comes
> in). So "B" will lead to nearly the same number of requests in work for
> every worker whenever you do a snapshot observation.
>
> For method "R" we accumulate, how many requests a worker has processed
> in the past. So "R" will lead to the same number of requests being
> accumulated by each worker, e.g. when you count that from your log files.
>
> Since the pure "R" strategy has negative side effects, we divide the
> number of requests done once a minute by 2, so that the past counts less
> the longer it is away.
>
>>
>> This is very important for us, since we currently use the 'Request'
>> method
>> in workers.properties and we want to know the exact working of the 2
>> methods
>> (Busy and Request). Since we plan on switching to a method that is best
>> suited for performance and proper load balancing.
>>
>
> Depending on the kind of workload B or r (or even T) could be better. B
> does the better Job on balancing parallelity, R does better balance
> accumulated work.
>
> Last minor point: B looks simpler and better understandable, but there
> is a small synchronization overhead with B, bevause B needs to change
> status counters 2 times per request (before and after), R only needs to
> add before and divide once in a minute.
>
>> Our main confusion here is that both the 'Request' and 'Busy' methods
>> refer
>> to the same criteria, which is "Number of Requests'
>
> I hope this sounds clearer now?
>
> Rainer
>
>
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org
>
>


Regards
Mohan Wickramasinghe


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Mladen Turk <ml...@jboss.com>.
Gianto Wijaya wrote:
> unsubscribe
> 

Each mail you receive has a line saying:
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org

Now, is there something you do not understand in that
statement? I suppose you know how to send an email cause
we have received this one.

Regards,
Mladen.

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Gianto Wijaya <gi...@dutapalma.co.id>.
unsubscribe


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Rainer Jung <ra...@kippdata.de>.
Mohan2005 wrote:
> Specifies what method load balancer is using for electing best worker. If
> method is set to R[equest] balancer will use number of requests to find the
> best worker. If set to T[raffic] balancer will use the network traffic
> between JK and Tomcat to find the best worker. If set to B[usyness] balancer
> will pick the worker with the lowest current load, based on how many
> requests the worker is currently serving. This number is divided by the
> workers lbfactor, and the lowest value (least busy) worker is picked.
> 
> And from your previous post you said..
> and I quote..
> 
> "Busy=number of parallel requests being processed for a worker at that point
> of time."
> and where "request = HTTP Request in progress"
> 
> Please clarify the difference between the 'Request' method and the 'Busy'
> method you had defined.

All statements are true, but maybe confusing: For method "B" we only 
take into account the requests, that are being processed at the moment 
the next balancing decision has to be made (i.e. the next request comes 
in). So "B" will lead to nearly the same number of requests in work for 
every worker whenever you do a snapshot observation.

For method "R" we accumulate, how many requests a worker has processed 
in the past. So "R" will lead to the same number of requests being 
accumulated by each worker, e.g. when you count that from your log files.

Since the pure "R" strategy has negative side effects, we divide the 
number of requests done once a minute by 2, so that the past counts less 
the longer it is away.

> 
> This is very important for us, since we currently use the 'Request' method
> in workers.properties and we want to know the exact working of the 2 methods
> (Busy and Request). Since we plan on switching to a method that is best
> suited for performance and proper load balancing.
> 

Depending on the kind of workload B or r (or even T) could be better. B 
does the better Job on balancing parallelity, R does better balance 
accumulated work.

Last minor point: B looks simpler and better understandable, but there 
is a small synchronization overhead with B, bevause B needs to change 
status counters 2 times per request (before and after), R only needs to 
add before and divide once in a minute.

> Our main confusion here is that both the 'Request' and 'Busy' methods refer
> to the same criteria, which is "Number of Requests'

I hope this sounds clearer now?

Rainer


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: "Busy" in jkmanager

Posted by Mohan2005 <mo...@roomsnet.com>.
This is a good Idea.
We already use Jmeter to test GC performance.
thanks for the tip.

but we have a variation of classes and customer behavious which is difficult
to simulate with jmeter.
we run load tests with one heavy class.
-- 
View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5186797
Sent from the Tomcat - User forum at Nabble.com.


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


RE: "Busy" in jkmanager

Posted by Tim Lucia <ti...@yahoo.com>.
While it is useful and important to understand the theoretical differences,
you should try all three methods and pick the one which performs the best
for your application under the expected load.  I used JMeter to test our
application and settled on T[raffic] as that gets the most requests done in
the least time.

Tim


> -----Original Message-----
> From: Mohan2005 [mailto:mohan@roomsnet.com]
> Sent: Tuesday, July 04, 2006 11:02 PM
> To: users@tomcat.apache.org
> Subject: Re: "Busy" in jkmanager
> 
> 
> Hello again,
> 
> According to the workers.properties document
> (http://tomcat.apache.org/connectors-doc/config/workers.html),
> 
> Definition of 'method' says the following...
> 
> Specifies what method load balancer is using for electing best worker. If
> method is set to R[equest] balancer will use number of requests to find
> the
> best worker. If set to T[raffic] balancer will use the network traffic
> between JK and Tomcat to find the best worker. If set to B[usyness]
> balancer
> will pick the worker with the lowest current load, based on how many
> requests the worker is currently serving. This number is divided by the
> workers lbfactor, and the lowest value (least busy) worker is picked.
> 
> And from your previous post you said..
> and I quote..
> 
> "Busy=number of parallel requests being processed for a worker at that
> point
> of time."
> and where "request = HTTP Request in progress"
> 
> Please clarify the difference between the 'Request' method and the 'Busy'
> method you had defined.
> 
> This is very important for us, since we currently use the 'Request' method
> in workers.properties and we want to know the exact working of the 2
> methods
> (Busy and Request). Since we plan on switching to a method that is best
> suited for performance and proper load balancing.
> 
> Our main confusion here is that both the 'Request' and 'Busy' methods
> refer
> to the same criteria, which is "Number of Requests'
> 
> Thanks again.
> Mohan
> --
> View this message in context: http://www.nabble.com/%22Busy%22-in-
> jkmanager-tf1888108.html#a5175444
> Sent from the Tomcat - User forum at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To start a new topic, e-mail: users@tomcat.apache.org
> To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: users-help@tomcat.apache.org


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Mohan2005 <mo...@roomsnet.com>.
Hello again,

According to the workers.properties document
(http://tomcat.apache.org/connectors-doc/config/workers.html),

Definition of 'method' says the following...

Specifies what method load balancer is using for electing best worker. If
method is set to R[equest] balancer will use number of requests to find the
best worker. If set to T[raffic] balancer will use the network traffic
between JK and Tomcat to find the best worker. If set to B[usyness] balancer
will pick the worker with the lowest current load, based on how many
requests the worker is currently serving. This number is divided by the
workers lbfactor, and the lowest value (least busy) worker is picked.

And from your previous post you said..
and I quote..

"Busy=number of parallel requests being processed for a worker at that point
of time."
and where "request = HTTP Request in progress"

Please clarify the difference between the 'Request' method and the 'Busy'
method you had defined.

This is very important for us, since we currently use the 'Request' method
in workers.properties and we want to know the exact working of the 2 methods
(Busy and Request). Since we plan on switching to a method that is best
suited for performance and proper load balancing.

Our main confusion here is that both the 'Request' and 'Busy' methods refer
to the same criteria, which is "Number of Requests'

Thanks again.
Mohan
-- 
View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5175444
Sent from the Tomcat - User forum at Nabble.com.


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Rainer Jung <ra...@kippdata.de>.
Request = HTTP Request in progress

Load balancing only uses Busy counter when the "method" attribute of the
lb worker is set to "B" in workers.properties. In this case the lb
worker always routes a request to the worker with smallest Busy counter
at the times the request has been received.

If the method is not "B", the value is only shown for
monitoring/informational purposes.

Mohan2005 schrieb:
> Thank you very much for that answer.
> 
> When you say 'Requests' does that mean the number of objects rendered
> through that particular tomcat node ?
> 
> And how does the load balancing mechanism use the 'Busy' factor ?
> 
> Thanks 
> Mohan

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Mohan2005 <mo...@roomsnet.com>.
Thank you very much for that answer.

When you say 'Requests' does that mean the number of objects rendered
through that particular tomcat node ?

And how does the load balancing mechanism use the 'Busy' factor ?

Thanks 
Mohan
-- 
View this message in context: http://www.nabble.com/%22Busy%22-in-jkmanager-tf1888108.html#a5163963
Sent from the Tomcat - User forum at Nabble.com.


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Re: "Busy" in jkmanager

Posted by Rainer Jung <ra...@kippdata.de>.
Busy=number of parallel requests being processed for a worker at that
point of time.

If worker.yourloadbalanceworker.method=B, this loadbalancer will send a
request always to its balanced worker with the lowest busy count.

A bug in mod_jk 1.2.15 leads to the wrong display of very high busy
counters. That has been fixed in version 1.2.16.

We just now tagged 1.2.16. A release candidate is available. Please have
a look at

http://marc.theaimsgroup.com/?l=tomcat-dev&m=115194553720728&w=2

Test results are welcome. If no new problems will be found, the release
vote will procees starting Friday.

The final release will be announced on this list and on the dev list.

Mohan2005 schrieb:
> Dear All:
> 
> Please explain what this "Busy" number is in jkmanager and its significance
> to the load balancer.
> 
> Thanks in advance.
> Mohan

---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org