httpd-modules-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Croteau, Beau" <Beau.Crot...@ca.com>
Subject RE: Apache Thread Creation/Destroy Problem (mod_ssl problem)
Date Mon, 18 Jun 2007 21:22:06 GMT
I have tried the LibAPR thread methods as well and the same thing still
occurs.

Joe mentioned the 'resumable' possibility.  Does anybody have any idea
if part of this is maintaining current 'state' of the threads being
executed?


--Beau

-----Original Message-----
From: Joe Lewis [mailto:joe@joe-lewis.com] 
Sent: Monday, June 18, 2007 4:24 PM
To: modules-dev@httpd.apache.org
Subject: Re: Apache Thread Creation/Destroy Problem (mod_ssl problem)

Croteau, Beau wrote:
> Does anybody have any ideas.  I don't see any 'hooks' in OpenSSL for
> thread creation or destruction, but maybe I'm missing something.
(Yes,
> I have used the APR thread functions to no avail as well).
>
> I'm really perplexed by the behavior.
>   

I DO know that the SSL extension for apache does attempt to use global
mutexes - the reason is that as an SSL connection is terminated, it
needs to be "resumable" with a fast handshake (as per the SSL
handshakes), which could happen across clients. Now, I don't see it
creating, so that may not be an issue.

Something I noticed is that your sleep() function is for 83 minutes
(repetatively, no less). (You could be seeing issues with the threads
running for so long - mutexes work in conjunction with threads and
semaphores to keep things in sync). Additionally, you are using
_beginthread() [which are native Microsoft calls] when you could be
using apr_thread_create (I don't know how portable those commands are to
winders, but you might want to try and implement those). See

http://apr.apache.org/docs/apr/0.9/group__apr__thread__proc.html

for more details regarding the functions.

I'd try the aprlib functions to see if things improve - which I expect
they will - and if they do, what you are experiencing is a collision of
threads and shared memory routines between the windows platform and the
actual APRLIB utilized by mod_ssl.

Joe
-- 
Joseph Lewis <http://sharktooth.org/>
"Divide the fire, and you will sooner put it out." - Publius Syrus


Mime
View raw message