phpbar.de logo

Mailinglisten-Archive

[php] performance-probleme mit apache/php3/oracle/sun-solaris

[php] performance-probleme mit apache/php3/oracle/sun-solaris

johnny pichler johnny_(at)_mega-card.at
Thu, 04 May 2000 19:01:02 +0200


Ulf Wendel wrote:
> Eine Ulta-1 ist nun auch nicht mehr der letzte Heuler, oder habe ich da
> eine Epoche verpennt. Was erzeugt die Last? Weist ein top die php
> Prozesse als Verursacher aus?

die maschine haben uns nicht wir ausgesucht...

da php als apache-modul lauft sehe ich im top nur die httpd-prozesse.

> 
> > Oracle 8.0.5
> 
> Das Oracle frißt, aber die Maschine hat ja auch RAM.

das oracle tut uns auch nicht weh.

> 
> > es werden KEINE db-connections aufgebaut, KEINE functions,
> > berechnungen etc. gemacht, sondern "normaler" html-code
> > ausgegeben.
> 
> Ist das PHP auf das notwendige runtergeschrumpft, sind nicht benötigte
> Module einkompiliert? Was für Laufzeiten melden die PHP Skripte selbst?
> Ist der Apache korrekt konfiguriert, startet er zu wenige/zu viele
> Childs?
wir denken mal schon dass wir nur das notwendigste dabei haben:
standardmaessig kompiliert mit der option "with-Oracle", "with-Apache"
(lt. install-file der distribution)

zu der laufzeit von den scripts:
das was am unverhaeltnismaessig lang dauert ist, das laden von
3 libraries (in summe ca. 30K), die im wesentlichen nur ein 
set von functions beinhalten.
die ladezeiten konnten wir reduzieren, indem wir die libs in das
php3.ini file eingetragen haben. (auto_prepend_file)

es scheint vielleicht etwas mit diversen resourcen zu tun zu haben 
die evt. nicht freigegeben werden (nix free_sql_statement, die 
probleme haben wir auch ohne db !!!).

die php libraries werden instantiert mit 
$varname = new modulename. ich koennte mir vorstellen dass 
das php module die instanzen der klasse nicht freigibt, das koennte 
erklaeren, warum die load bei heftigen requests (ein paar mal 
hintereinander apache benchmark -c 15 -n 250 starten) kontinuierlich
steigt und sich nicht auf einem (wenn auch hohen) level einpendelt.

gibt es fuer php irgendeine methode ressourcen wieder 
freizugeben (ausser unset $varname, was in unserem fall 
eingebaut is, aber  nix bringt) ?

der apache is unseres wissens nach richtig konfiguriert





> 
> Ulf
> 
> --
> ** Durchgehend geöffnet: http://www.php-center.de **
> Die PHP-Liste: mailto:php_(at)_php-center.de
> http://infosoc.uni-koeln.de/mailman/listinfo/php


php::bar PHP Wiki   -   Listenarchive