tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Costin Manolache <>
Subject RE: [proposal] JK2 (WIN32) add dynamic load balancing
Date Wed, 22 Jan 2003 21:47:54 GMT
Mladen Turk wrote:

>> -----Original Message-----
>> > 
>> > The WIN32 has Performance Monitor that monitors server's activity.
>> > There is also and interface to that using Registry
>> functions, although
>> > the data isn't really stored in the registry. We could use those
>> > information to select the least loaded server as a suitable worker.
>> > I plan to add the extra file in common that will launch the
>> performance
>> > gatherer thread, that will loop through registered remote
>> machines and
>> > query the performance data.
>> > 
>> > Any suggestions or objections to that?
>> Big +1
>> I think it can be done on Unix ( or Linux at least ), probably an
>> "interface" would be the best solution ( i.e. a struct with function
>> pointers ).
>> How do you plan to send back the data ? As part of the
>> response ? Maybe as a special header ?
>> Costin
> Well, the data channel isn't issue in that case (on WIN32<->WIN32... )
> cause I'm querying the OS not the TC itself.
> If the *NIX has some sort of RPC for querying it's status we can use
> that, filling some struct or something like that.

Wouldn't be better to make it OS-independent ? Just create a special
handler ( "GetLoadHandler" ), and make a Jk request. Then you can have
any frontent query any worker.

It seems much cleaner than using Win32->Win32 RPC calls. 

SNMP is another way to do this - but it would be far more complex
( not to mention security issues, etc ).

> Other solution would be to make an extra channel that will gather those
> params (if we can get system load params with pure Java) from inside TC.

I don't think you need an extra channel - you can make a "regular" request,
that will be dispatched to a special "load" handler.

But it seems the extra channel is mentioned often enough and would simplify
some things - so it may be time to add it. 

I would do it with the "easy" solution first ( IMO the jk handler + ajp 
request is the easiest ).


To unsubscribe, e-mail:   <>
For additional commands, e-mail: <>

View raw message