Runaway Children Memory Usage (PR#120)

1999-03-14 Thread John Hamlik

The memory usage seems to be related to virtual hosts.  If a person only
has a few virtual hosts memory usage is roughly identical.  In my case
with 500+ IP virtual hosts the child process is 3 times the size of a
equilalent setup under mod_ssl-2.0.13-1.3.3.  Apache 1.3.4 configured
without mod_ssl-2.2.4-1.3.4 with the same number of virtual hosts
doesn't show a significant memory usage difference vs. Apache 1.3.3.

I still believe there is a problem regarding the children hanging.  I
just built a new RedHat5.2 server and installed apache-1.3.4,
mod_ssl-2.2.4-1.3.4 and openssl-0.9.c with just the default
configuration per FOR JOE AVERAGE.  In less than two minutes under light
https load child processes will start to hang.  I have yet to hang a
child on http traffic. I just can't believe I am the only one having
trouble with this, aargh!...  Anyway for now I guess I just have to
stick with apache-1.3.3 and mod_ssl-2.0.13-1.3.3 which has been up and
stable in our clusters since Oct 15.  I am really tempted to build a
FreeBSD box just to check it out.

John




__
Apache Interface to SSLeay (mod_ssl)   www.engelschall.com/sw/mod_ssl/
Official Support Mailing List   [EMAIL PROTECTED]
Automated List Manager   [EMAIL PROTECTED]



Re: [PHP-DEV] ANNOUNCE: MM library, version 1.0b1 (fwd)

1999-03-14 Thread Eserio

Hello,

 Currently I've implemented the following variants which already cover 95% of
 all current major Unix platforms AFAIK:
 
   Shared Memory:
   o Classical mmap() on temporary file
   o SVR4-style mmap() on /dev/zero
   o mmap() via POSIX.1 shm_open() on temporary file
   o 4.4BSD-style mmap() via MAP_ANON
   o SysV IPC shmget()
 
   Mutex/Semaphore:
   o 4.2BSD-style flock() on temporary file
   o SVR4-style fcntl() on temporary file
   o SysV IPC semget()

I don't know if this is already in the plans, but while you are at it you
could use this library to add support to PHP for named semaphores and
shared memory.

Currently the only way to share semaphores and shared memory keys between
two instances of the same PHP script run by different Apache threads is by
hardcoding key numbers in the script.

The way I see it this raises a problem regarding the availability of the
key.  It might happen once in a while that the hardcoded key number may
have been acquired by some other process besides the one that your PHP
script runs on.  This may be problematic because it may leave your script
waiting for a semaphore that is being hold by some other process to
arbitrate the access to a completely unrelated resource.

My suggestion is that instead of using hardcoded keys, there should be a
way to allocate a private key (IPC_PRIVATE).  So, if the script wants
acquire a semaphore/shared memory, it would pass a string that would be
used an index for an associative array of keys.

If there is no key associated to the given named index, the key allocation
code would allocate a new private key and would store it in the associative
array.  So, next time the script asks for the same named key, the same
private key would be fetched and returned.

Of course all the associative array of keys would have to be stored in
shared memory arbitrated with their own private set of semaphores.  So, the
shared memory/semaphore pools would come right in hand for the job.

Just let me know what do you think about this and if you think it is
feasable.

Bye
__
Apache Interface to SSLeay (mod_ssl)   www.engelschall.com/sw/mod_ssl/
Official Support Mailing List   [EMAIL PROTECTED]
Automated List Manager   [EMAIL PROTECTED]



Re: Runaway Children Memory Usage (PR#120)

1999-03-14 Thread Bruno Treguier

On Sat, Mar 13, 1999 at 09:21:23PM -0800, John Hamlik wrote:
 I still believe there is a problem regarding the children hanging.  I
 just built a new RedHat5.2 server and installed apache-1.3.4,
 mod_ssl-2.2.4-1.3.4 and openssl-0.9.c with just the default
 configuration per FOR JOE AVERAGE.  In less than two minutes under light
 https load child processes will start to hang.  I have yet to hang a
 child on http traffic. I just can't believe I am the only one having
 trouble with this, aargh!...  Anyway for now I guess I just have to
 stick with apache-1.3.3 and mod_ssl-2.0.13-1.3.3 which has been up and
 stable in our clusters since Oct 15.  I am really tempted to build a
 FreeBSD box just to check it out.

You're not alone John... I just subscribed a few days ago to the list
because we just installed apache_1.3.4 with mod_ssl 2.2.4 (an previously
2.2.2 which seemed to exhibit the same behaviour, but I didn't dare to
talk about it because I thought we had an installation problem (which
might still be the case, but at least the solution doesn't seem to be
so obvious :-) ). We also have the "hanging children" problem...

We built our Apache with all the modules as shared objects. Don't know
if it would change something to build statically, as we didn't take the
time to check yet...

Cheers,

Bruno

-- 
Bruno TREGUIER [EMAIL PROTECTED]  | " Il y a 3 sortes de personnes:
  Association INternet FINIstere,|   celles qui savent compter,
25 rue Fautras, 29200 Brest, FRANCE  |   et celles qui ne savent pas..."

__
Apache Interface to SSLeay (mod_ssl)   www.engelschall.com/sw/mod_ssl/
Official Support Mailing List   [EMAIL PROTECTED]
Automated List Manager   [EMAIL PROTECTED]



RE: Runaway Children Memory Usage (PR#120)

1999-03-14 Thread John Hamlik

All of the builds I have done have been static.  So I guess that doesn't
make a difference.

 -Original Message-
 From: Bruno Treguier [mailto:[EMAIL PROTECTED]]
 Sent: Sunday, March 14, 1999 3:16 AM
 To: [EMAIL PROTECTED]
 Subject: Re: Runaway Children  Memory Usage (PR#120)
 
 
 On Sat, Mar 13, 1999 at 09:21:23PM -0800, John Hamlik wrote:
  I still believe there is a problem regarding the children 
 hanging.  I
  just built a new RedHat5.2 server and installed apache-1.3.4,
  mod_ssl-2.2.4-1.3.4 and openssl-0.9.c with just the default
  configuration per FOR JOE AVERAGE.  In less than two 
 minutes under light
  https load child processes will start to hang.  I have yet to hang a
  child on http traffic. I just can't believe I am the only one having
  trouble with this, aargh!...  Anyway for now I guess I just have to
  stick with apache-1.3.3 and mod_ssl-2.0.13-1.3.3 which has 
 been up and
  stable in our clusters since Oct 15.  I am really tempted to build a
  FreeBSD box just to check it out.
 
 You're not alone John... I just subscribed a few days ago to the list
 because we just installed apache_1.3.4 with mod_ssl 2.2.4 (an 
 previously
 2.2.2 which seemed to exhibit the same behaviour, but I didn't dare to
 talk about it because I thought we had an installation problem (which
 might still be the case, but at least the solution doesn't seem to be
 so obvious :-) ). We also have the "hanging children" problem...
 
 We built our Apache with all the modules as shared objects. Don't know
 if it would change something to build statically, as we 
 didn't take the
 time to check yet...
 
 Cheers,
 
 Bruno
 
 -- 
 Bruno TREGUIER [EMAIL PROTECTED]  | " Il y a 3 sortes de personnes:
   Association INternet FINIstere,|   celles qui savent compter,
 25 rue Fautras, 29200 Brest, FRANCE  |   et celles qui ne 
 savent pas..."
 
 __
 Apache Interface to SSLeay (mod_ssl)   www.engelschall.com/sw/mod_ssl/
 Official Support Mailing List   [EMAIL PROTECTED]
 Automated List Manager   [EMAIL PROTECTED]
 
__
Apache Interface to SSLeay (mod_ssl)   www.engelschall.com/sw/mod_ssl/
Official Support Mailing List   [EMAIL PROTECTED]
Automated List Manager   [EMAIL PROTECTED]