Investing on my multi-threads architecture, today my apache blocked!!
Two apache childs blocked and they were consuming all my CPU.
As soon as I discovered this problem, I tryed to do strace pids of childs:

futex(0x80d29b0, FUTEX_WAIT, 2, NULL)   = -1 EAGAIN (Resource temporarily 
unavailable)

It seems there is some problems with threads ....
Do you know if there is some known bugs with apr threads?

--Marco


-------- Original Message --------
Subject:        Modules architecture diff
Date:   Thu, 02 Mar 2006 12:33:52 +0100
From:   Marco Spinetti <[EMAIL PROTECTED]>
To:     [EMAIL PROTECTED], dev@apr.apache.org



Hi all,
I'm experimentig some strange performance results for my modules and I hope you can explain me why. I made a test between two modules architecture: my modules have to connect to variuos external sources simultaneously. So I tries these two architectures:

1) No Blocking IO: I 'm using apr poll (apr_pollset_poll)
2) Multi threads: I'im using apr threads;

I'm using apache 1.3.34 and my host is RHEL 3 (Linux version 2.4.21-9.0.3.ELsmp) with 2 CPU and 2GB memory.

I was expecting that multi-threads architecture was better because with apr_poll you read from opened descriptors a lot of times. In architecture 2) I'm using apr pool for all my memory allocations, while in the first architecture I'm using apache pool too.

Analyzing (with gsl) the distribution, the mean, variance and standard deviation of reply time the No Blocking IO is much better: in the multi-threads architecture the variance is greater by a factor of 10.

Any ideas about these differences?
Were my expectations wrong?

Thanks for the support

Bye

--Marco







--
+-----------------------------------------+
Software Engineer - Spinetti Marco
Direzione SS.PSM.TS
Mobile: +39 329 4424216
Fisso : +39 050 6184264
Fax   : +39 050 6184244
E-mail: [EMAIL PROTECTED]

Italia Online S.r.l. Wind Telecomunicazioni Spa
Via Malagoli, 12  -  56124   Pisa  PI
+-----------------------------------------+

Reply via email to