Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Netzwerke>Frage an die UNIX Profis - Apache, MySQL, PHP, Socket, etc

Frage an die UNIX Profis - Apache, MySQL, PHP, Socket, etc

seaside08.06.0623:57
Ich habe hier zwei Systeme. System A wurde von mir frisch mit SuSE Linux 10.0 konfiguriert. System B wurde von einem Provider mit RedHat konfiguriert. Beide haben 3 GByte Speicher und sind mit 2 x DP Xeon 64bit ausgerüstet. PHP und MySQL kommunizieren über Sockets.

A:
Genau ein MySQL Prozess
ca. 150 concurrent MySQL connects möglich
MySQL

B:
So viele MySQL Prozesse, wie HTTP Connects aktiv sind
Ca. 70 concurrent MySQL connect möglich

> Frage 1: Warum startet auf jeweils ein neuer mysql prozess, aber auf A nur einer?

Auf beiden habe ich in my.cfg maximum_connections, maximum_user_connections hochgezogen. Auf beiden Systemen habe ich per umlimit die Anzahl der open files und processes stark erhöht.

Wenn ich die Systeme mit Apache's 'ab' unter Last setze, dann antwortet A stetig langsamer, connected aber immer mit MySQL.

System B meldet irgendwann dass MySQL connections nicht mehr möglich seien. Selbst mysqladmin auf der Kommandozeile in der Shell von System B kann keinen Connect mehr herstellen.

>> Frage 2: Warum klappen selbst connects per Socket nicht mehr?

>> Frage 3: Wie kann ich erkennen, ob ich irgendeine absolute maximale Zahl von TCP oder Socket Connections erreicht habe? Oder ob ich eine absolute Obergrenze offener Files erreicht habe?

Alle Fragen beziehen sich auf Linux. Allerdings gibt es ähnliche Grenzen vermutlich auch unter OS X.

Kann jemand das Verhalten allgemein erklären?
0

Kommentare

buggy123409.06.0609:32
Hilft Dir der folgende Link bei einer Deiner Fragen?

http://www.dynamicwebpages.de/php/function.mysql-list-processes.php

gruß buggy
0
buggy123409.06.0609:34
Pardon ……… und natürlich auch eine Google-Suche: http://www.google.com/search?q=MySQL%20%2BProzesse
0
seaside09.06.0616:23
Ja, dank, aber diese Quellen kannte ich natürlich schon.

Ich habe zunehmend den Eindruck, dass Maschine A Threads unterstützt, Maschine B aber nicht.

Jedenfalls wird bei Angabe des 'Show threads' Parameter

ps auxm

auf B kein einziger Thread angezeigt. Insofern könnte die schlechtere Performance von B damit zusammen hängen, dass B für jeden neuen Request einen eigenen Prozess anlegt, A aber mit einem Threads auskommt.

Könnte das sein?
0
gefahrensucher09.06.0617:01
Sind das beide die selben Mysql Versionen?

Hast Du mal mit
mysql> SHOW STATUS;

beide Einstellungen verglichen?
0
seaside09.06.0617:22
Nein, sind nicht beide identisch. B ist eine 4.1.*, A eine 5.* (die aktuelle Version)
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.