Brad Nicholes wrote:
>>>> On 7/13/2009 at 8:17 AM, in message
>>>>         
> <e6ccb7f50907130717i2f3dfd5fi1c69dbd4124a7...@mail.gmail.com>, utopia zh
> <utopia...@gmail.com> wrote:
>   
>> Hi,
>>
>> While trying to use gmond to monitor our applications, we found some issues:
>> - Metric collecting may take long time to finish, such examples
>> include collecting master/slave status from LDAP, parsing web pages to
>> get statistics.
>>     

This is definitely an issue for some metrics, but not all

It would be nice to have threading support within the agent rather than 
requiring each person who implements a module to re-invent the wheel.  
However, it might be best to make it configurable, so that `start a 
thread' becomes a config option for each module or metric.  There could 
be some flag in Ganglia_25metric with which a developer can tell gmond 
that a metric must be run in it's own thread, and some configuration 
file option to allow the sysadmin to override the default setting of the 
flag.
>> - Receiving metrics updating from other node may fail due to blocking
>> metric collecting.
>>
>> To avoid this blocking behavior, we tried to change gmond to multithread:
>> - Main thread to collect metrics, we also have the metric collection
>> python script changed to be non-blocking
>> - Dedicate thread to receive updates from other nodes.
>> - Dedicated thread to server clients (gmetad/telnet, etc).
>>     
Do you think one thread should be started to handle every client request 
(so requests can be handled in parallel), or a single thread that runs 
continuously and handles the requests one at a time?

>> Could you help review the patch? We'd like to contribute the patch to
>> the community if multi-thread is a generally required features.
>>
>> Any comments will be appreciated. Thanks.
>>     
How many platforms have you tested it on?  Linux, Solaris and Windows 
are quite popular, and I've found differences in behaviour on each of 
them when I added some threading code to gmond.

Here is a previous thread on threads:

http://mail-archives.apache.org/mod_mbox/apr-dev/200903.mbox/<cc67648e0903261256u7096f67dv44dd449fd512...@mail.gmail.com>

Depending on how apr was built, and on which platform, the threading 
support isn't always active - if threading is needed, the Ganglia 
configure script needs to be more aggressive about detecting such cases 
and telling the person go and build apr again.




------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Ganglia-developers mailing list
Ganglia-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ganglia-developers

Reply via email to