phpbar.de logo

Mailinglisten-Archive

[php] Hilfe bei Apache/Linux

[php] Hilfe bei Apache/Linux

Werner Stuerenburg ws_(at)_art-quarter.com
Mon, 16 Oct 2000 22:15:38 +0200


Hi Joerg!

Langsam kommen wir der Sache näher.

> Kannst du noch einmal angeben was du nun genau eingestellt hast?
> Min/Max/Start usw. Servers.

MinSpareServers 5
MaxSpareServers 10
StartServers 5
MaxClients 100
MaxRequestsPerChild 10

Ich habe jetzt beobachtet, daß er bei 90 Prozessen definitiv absäuft. Ich
glaube also nicht mehr an einen Programmfehler, wie der Typ mir weismachen
will, der das für mich eingerichtet hat.

Ich habe jetzt erst mal 

MaxKeepAliveRequests 

von 0 auf 80 gesetzt, aber das war natürlich ein Denkfehler - das sind ja
vermutlich eher 30 Prozesse, die der httpd hat, 80 sollten es insgesamt
sein.

Ich habe dazu noch 

MaxClients 30

gesetzt und hoffe jetzt, daß die Sache jetzt nicht dauernd abgewürgt werden
muß.

Es klappt nicht gleich, ich drehe noch ein bißchen an den Werten.

Es ist ganz klar, so von 19-21 Uhr war relative Ruhe, Abdnessen,
Tagesschau, jetzt geht das vor dem Schlafengehen wieder los.

> Was hast du denn alles in dein Apache/PHP 'geballert' sprich kompiliert
> das er so gross wird. Ich weil leider nicht ob die DSO gegenueber der
> statischen Variante Speichertechnisch irgendwelche Nachteile hat (ausser
> das sie langsamer ist). Falls nein baue ihn mal als DSO.

Tja - ich habe gar nicht. Ist natürlich ein Fehler, sehe ich ein, aber ich
kann mich nicht zerreißen. Ich habe jemanden gesucht, der mir das abnehmen
kann, und auf php-center.de niemanden gefunden. 

KK konnte ich mir nicht leisten, da habe ich mich erinnert, daß mein
Reseller das machen könnte - ja und so war das. Der Techniker hat offenbar
ein solides Halbwissen, aber dafür doppeltes Selbstbewußtsein.

Er hat jedenfalls Apache nicht so konfiguriert, wie wir das brauchen,
sondern wie er das immer macht - z.B. mit Frontpage, und das auch noch
schlecht - dort fehlt ein Verzeichnis, weshalb Apache meckert. Er dazu: das
brauchen Sie doch sowieso nicht. (grrrrr!)

DSO sagt mir gar nichts.

loaded modules:

mod_php4, mod_frontpage, mod_setenvif, mod_unique_id, mod_usertrack,
mod_digest, mod_auth_db, mod_auth_dbm, mod_auth_anon, mod_auth, mod_access,
mod_rewrite, mod_alias, mod_userdir, mod_actions, mod_imap, mod_asis,
mod_cgi, mod_dir, mod_autoindex, mod_include, mod_status, mod_negotiation,
mod_mime, mod_log_referer, mod_log_agent, mod_log_config, mod_env,
mod_vhost_alias, http_core

Was davon brauche ich? Ich brauche php und mySQL und mod_rewrite - sonst
nichts. Was machen diese ganzen Module, was brauche ich davon?
 
> Ein.
> CFLAGS='-DBUFFERED_LOGS'
> export CFLAGS
> ./configure --prefix=/usr/local/apache --enable-module=all
> --enable-shared=max
> make
> make install

Das ist mir leider alles fremd.
 
> reicht da ja schon. Die 'BUFFERED_LOGS' sorgen dafuer das er die
> Eintrage fuer Logfiles zwischen speichert und und in schueben auf die
> Platte schreibt. Fuer Leute mit viel Traffic und ohne SCSI Raid eine
> Alternative. Erschwert aber in den Anfangsstunden die Suche nach
> Fehlern.. weil halt das error.log halt nicht sofort geschrieben wird.

Im error.log steht nichts Signifikantes drin.
 
> Nun kannst du alle nicht benoetigten Module erst einmal
> ausdokumentieren. Die sollte den Speicherverbrauch reduzieren.
> Allerdings ist ist das groesste Modul von allen PHP. Gerade die
> Datenbankmodule schlagen hier richitg zubuche.
> 
> Hier heisst es also sich auf das noetigste zubeschraenken. Dank DSO
> laesst sich ja ein PHP in 2 bis 3 Minuten bauen.  So koenntest du mit
> verschiedenen Modulen testen bzw. ein update auf PHP4.0.3pl1 geht ganz
> fix. Evtl. bringt es auch etwas ganz selten benoetigte Module als Shared
> object zuuebersetzten und dann zur Laufzeit einzubinden.

Ja, leider kann ich nicht. Ich brauche da dringend Hilfe. Vielleicht ist
das kein Ding für die Mailingliste.

> > Dann kamen mir Bedenken - vielleicht war das in Ordnung? Vom alten Host
> > weiß ich, daß regelmäßig User wahnsinnig lange drin waren, und habe
> > geschlossen, daß das wohl SE waren, die sich alles gezogen haben. Fireball
> > und Google z.B. habe Tausende von Seiten indiziert.
> 
> Als ein schlecht programmierter Robot kann die theoretisch den Sever zu
> tode 'requesten'. Das selbe kannst du aber auch machen in dem du den
> Apache-benchark aus dem bin-Verzeichnis mal nach 'ab -n1000 c5
> http://loaclhost/'.

?? Nix verstahn.
 
> Evtl. mittels einer robots.txt den Zutritt verbieten. Haelt sich evtl.
> nicht jede SE drann.. ist aber ein Anfang.

Eigentlich ist man doch froh, wenn die kommen.
 
> Wieso das denn nicht? Bei uns rauschen 2000 Anwender mit der selben IP
> draussen rum. NAT machts moeglich. Sollte bei den richtigen grossen auch
> nicht anders sein. Wo bei die ja noch innerhalb einer Surfsession die IP
> wechseln koennen.

NAT ?. 
 
> > Wenn ich nun einen Test mache und eine Seite aufziehe, die deutlich lange
> > braucht, bis der Browser alles geladen hat - die sehe ich in top praktisch
> > gar nicht, so schnell geht das. Genauso mit mysql - ist normalerweise nicht
> > zu sehen, obwohl jede Seite mehrfach die db befragt.
> 
> Liegt die Datenbank mit auf dem Rechner? Da kann man natuerlich ueber
> Sockets sparsame/schnelle Verbindungen hinbekommen aber die DB braucht
> ja auch Speicher. Unter Umstaenden ist hier ein dedizierter DB Server
> eine Alternative.
 
Ja, tut sie.
 
> > Ich habe auch schon 20 x refresh gemacht, ohne daß was passierte. Wenn der
> > aber mit den Prozessen hochgeht (normal 65-70 jetzt) und auf 80, 90 100
> > kommt, ist es zu spät, dann geht der in den swap und erholt sich nicht
> > mehr.
> 
> Ein swappender Webserver ist ein 'schlechter' Webserver.

Jetzt weiß ich, was das ist. 
 
> > Hat jemand Erfahrung damit?
> 
> Also die Load ist ja laecherlich ;) 

Das höre ich gerne.

> Wobei 128MB fuer einen Webserver nun
> auch nicht gerade uebermaessig viel ist.  

Wenn man mir das vorher gesagt hätte...

> Hast du wirklich soviele
> Requests das du soviele Apachechilds brauchst? 

Tja, wir hatten zuletzt fast 80.000 Besucher und 600-700.000
Seitenzugriffen - wobei mir nicht klar ist, was da eigentlich gezählt wird.

> Kann das erzeugte HTML
> ueberhaupt  uber deine Netzwerkanbindung abfliessen. Wenn du nur mit 2Mb
> drann haengst ist das schon mal ein Flaschenhals.

Der Server steht bei dn = digitalNation = dedicatedservers.com und die
behaupten nun, sehr schnelle Anbindungen zu haben. Der Einrichter betreibt
da eine Sun und ist sehr zufrieden.

tracert zeigt ordentliche Werde: so ca. 220ms, wobei ich meinen alten Host
mit 190 ms erreiche, aber das liegt laut Einrichter daran, daß der an uunet
hängt und ich mit uunet reingehe.

Wenn alles ruhig ist, geht es auch sehr schnell, wenn nicht gerade der
lokale Provider Probleme hat.
 
> ps: halt uns mal auf dem laufendem. Achja aktuell ist Apache 1.3.14 und
> PHP4.0.3pl1

Habe ich mitgekriegt. Ich habe den Einrichter darauf angesprochen, daß
4.0.2 laut KK genommen werden soll, während er 4.0.1 genommen hat. Er
darauf: Quack! Da könnte man ja laufend neu bauen, ständig kämen neue
Versionen heraus. 4.0.1. sei stabil und damit basta.

Übrigens läuft der immer noch auf über 90 hoch, aber mehr zu beschränken
traue ich mich nicht. Ich will die Sache ja nicht kaputtkonfigurieren - das
habe ich ja neulich schon hingekriegt.

-- 

Mit freundlichem Gruss
Dr. Werner Stuerenburg

_________________________________________________
ISIS Verlag, Teut 3, D-32683 Barntrup-Alverdissen
Tel 0(049) 5224-997 407 · Fax 0(049) 5224-997 409
http://pferdezeitung.de    http://art-quarter.com


php::bar PHP Wiki   -   Listenarchive