Apache2 benötigt über 4 GB Ram pro Prozess!

N

nightcoding

Aktives Mitglied
Thread Starter
Dabei seit
31.03.2008
Beiträge
1.104
Reaktionspunkte
65
Hi Leute,

ich war bisher immer mit Leopard unterwegs und darauf war ein über MacPorts installierter Apache2 mit allem Schnickschnack. Der lief auch immer problemlos. Vor ein paar Wochen habe ich auf SnowLeopard erneuert und MacPorts hat sich dabei auch erneuert. Bisher lief der kleine Indianer ohne Anstand und ohne Probleme.

Das einzige Problem war, dass der Phusion Passenger nicht mehr lief. Aber das war nicht so tragisch. Seit heute jedoch geht gar nichts mehr. Starte ich den Apache, läuft er normal wie immer. Rufe ich http://localhost auf, wird meine Standardseite angezeigt. Soweit ok.

Rufe ich allerdings http://localhost/test/ auf (ein Ordner, in dem ich viele Snippets liegen haben, hauptsächlich HTML/CSS/JavaScript und ein wenig PHP) wird nur noch eine weiße Seite angezeigt und nicht mehr wie früher der Directory-Index.

Und jetzt kommts: rufe ich einer meiner Projekte auf, fängt der Apache an haufenweise Prozesse anzulegen, so knapp 50 Stück, die allesamt Speicher ohne Ende fressen. Am Ende waren es heute über 20GB, die ausgelagert wurden. Ging natürlich gar nix mehr. Und das ganz seltsame: das tritt nur mit dem Firefox auf, rufe ich die Projekte mit Safari auf, ist es zwar langsam, aber es geht.

Die Logs zeigen mir dann hunderte von solchen Einträgen:

[Mon Feb 07 13:50:01 2011] [notice] child pid 1167 exit signal Bus error (10)
.

Hat irgendeiner eine Idee woran das liegen könnte? Ich hab weder etwas geändert, noch neu installiert oder sonstiges.

Ich bin total ratlos, warum das von heute auf morgen nicht mehr läuft.

Danke & viele Grüße
Martin
 
hast du eventuell macports geupdatet?
normal crasht der apache nur, wenn irgendwelche configs nicht stimmen oder irgendwelche geladenen .so das problem sind...
 
Ja, MacPorts hat ein Selfupdate gemacht. Allerdings wurden keine Bibliotheken erneuert geschweige denn sonstwas installiert (ich hatte noch eine Liste mit installierten Ports vor dem Upgrade auf SL, nach dem Update auf SL und dem MacPorts Update waren das immer noch die gleichen in der gleichen Version).

Ich hab es jetzt aber gelöst: MacPorts komplett runtergeschmissen, neu draufgespielt und nutze aktuell den Apache, der direkt bei SL dabei war. Funktioniert alles tadellos und auch der Phusion Passenger läuft wieder.

So gesehen hat mir der Crash mehr gebracht:
- kein Apache über MacPorts mehr
- mehr Speicherplatz frei :D (dabei habe ich vor 2 Monaten extra eine 500gb besorgt...)
- aktuelle Bibliotheken

Bisher läuft noch alles reibungslos. Warum der allerdings von heute auf morgen nicht mehr ging ist mir immer noch rätselhaft. Ich glaube aber fast, dass MacPorts irgendwas verändert hat.

Danke dir!
 
das glaube ich kaum mit dem apple apachen ;)

Lass es mich anders formulieren: Aktuellere Bibliotheken ;) Vorher lief der Apache über MacPorts z.B. mit OpenSSL 0.9.8l, der SL-Apache hier läuft aber schon mit OpenSSL 1.0.0. CURL ist auch neuer als vorher.

Ob es natürlich die aktuellsten sind wage ich auch zu bezweifeln, aber zumindest aktueller als ich vorher hatte ;)
 
irgendwie nutzt du dann macports falsch, die sind da eigentlich schon weiter ;)
openssl 1.0.0c und z.b. php 5.3.5 oder curl 7.21.2 ...
 
irgendwie nutzt du dann macports falsch, die sind da eigentlich schon weiter ;)
openssl 1.0.0c und z.b. php 5.3.5 ...

Missverständnis: ich hatte bis vor paar Wochen noch Leopard am Laufen. Da der mitgelieferte Apache von Leopard aber PHP nicht richtig unterstützt hat, habe ich vor ca. 1 1/2 Jahren den Apache über MacPorts installiert und seitdem nie ein Update gemacht. Lief ja alles :) Vor paar Wochen habe ich dann ein Update auf SL gemacht, MacPorts hat sich auch erneuert, aber die installierten Sachen blieben die gleichen in der gleichen Version, von daher hatte ich ziemlich alte Bibliotheken.

Kann man MacPorts überhaupt falsch nutzen? ;) Ich hatte einfach nur nie ein Update der installierten Sachen gemacht.
 
naja, ab und ein
sudo port sync
sudo port upgrade outdated
hilft schon bei der nutzung ;)
 
resolutionM schrieb:
die Logs zeigen mir dann hunderte von solchen Einträgen:

[Mon Feb 07 13:50:01 2011] [notice] child pid 1167 exit signal Bus error (10)

Das klingt für mich so als ob eine alt apache.conf einen neueren Apache starten soll. Dabei kann es zu solchen Effekten kommen. Ist nun die gewünschte Zahl an freien httpd-forks so hoch das stetig neue generiert werden ( und wg. der nicht mehr passenden apache.conf crashen), so ist der Spaß perfekt :)


Mit einem Downgrade zum OS X Apache kann man das Problem aber nat. auch lösen !
 
naja, ab und ein
sudo port sync
sudo port upgrade outdated
hilft schon bei der nutzung

Das Problem an der Sache ist dann meistens Rails: irgendein Gem benötigt wieder irgendeine genaue Version, die ich über MacPorts installiert habe und wenn ich das öfter mal update funktioniert gar nix mehr ;) Aber ich werd es mir mal vormerken.

Mit einem Downgrade zum OS X Apache kann man das Problem aber nat. auch lösen !

Naja, bei mir wars eher ein Upgrade :D
 
Zurück
Oben Unten