PythonQ 240-8XX Bedienungsanleitung Seite 118

  • Herunterladen
  • Zu meinen Handbüchern hinzufügen
  • Drucken
  • Seite
    / 768
  • Inhaltsverzeichnis
  • LESEZEICHEN
  • Bewertet. / 5. Basierend auf Kundenbewertungen
Seitenansicht 117
Kapitel 3: Installation von MySQL 97
Wir sind derzeit dabei, mehr Informationen ¨uber die Performance von MySQL auf dem 2.4-
Kernel auf 4-Weg- und 8-Weg-Systemen zu bekommen. Wenn Sie Zugang zu einem solchen
System haben und einige Benchmarks gemacht haben, schicken Sie bitte eine Mail mit den
Ergebnissen an [email protected] - wir werden Sie dem Handbuch hinzuf¨ugen.
Es gibt eine weitere Sache, die die Performance von MySQL stark beeintr¨achtigt,
besonders auf SMP-Systemen. Die Implementation von mutex in LinuxThreads in
glibc-2.1 ist sehr schlecht f¨ur Programme mit vielen Threads, die den mutex nur
f¨ur kurze Zeit behalten. Wenn Sie MySQL mit unver¨anderten LinuxThreads linken,
f¨uhrt ironischerweise auf einem SMP-System in manchen allen das Entfernen von
Prozessoren zu einer Leistungssteigerung von MySQL. F¨ur glibc 2.1.3 haben wir
ein Patch bereit gestellt, um dieses Verhalten zu korrigieren: linuxthreads-2.1-patch
(http://www.mysql.com/Downloads/Linux/linuxthreads-2.1-patch)
Bei Verwendung von glibc-2.2.2 benutzt MySQL-Version 3.23.36 den adaptiven mutex, der
sogar viel besser als der gepatchte von glibc-2.1.3 ist. Seien Sie jedoch davor gewarnt, dass
unter bestimmten Umst¨anden der aktuelle mutex-Code in glibc-2.2.2 ¨uberdrehen kann, was
die Performance von MySQL beeintr¨achtigt. Die Gefahr, dass solche Umst¨ande eintreten,
kann dadurch verringert werden, dass der mysqld-Prozess auf die ochste Priorit¨at gesetzt
wird. Zus¨atzlich konnten wir das
¨
Uberdrehverhalten mit einem Patch korrigieren, der
hier (http://www.mysql.com/Downloads/Linux/linuxthreads-2.2.2.patch) erh¨altlich
ist. Der Patch kombiniert die Korrektur des
¨
Uberdrehens, die maximale Anzahl von Threads
und das Stack-Spacing in einem. Sie wenden es auf das linuxThreads-Verzeichnis mit
patch -p0 </tmp/linuxThreads-2.2.2.patch an. Wir hoffen, dass der Patch in irgend
einer Form in zuk¨unftigen Releases von glibc-2.2 enthalten sein wird. Wie es auch sei,
wenn Sie mit glibc-2.2.2 linken, ussen Sie immer noch STACK_SIZE und PTHREAD_
THREADS_MAX korrigieren. Wir hoffen, dass diese Vorgabewerte zuk¨unftig auf akzeptablere
Werte f¨ur eine MySQL-Hochlast-Einrichtung gesetzt werden, so dass Ihr eigener Build auf
./configure; make; make install reduziert werden kann.
Wir empfehlen, dass Die die oben genannten Patches benutzen, um eine spezielle statis-
che Version von libpThread.a zu bauen, die Sie nur f¨ur statisches Linken mit MySQL be-
nutzen. Wir wissen, dass die Patches f¨ur MySQL sicher sind und seine Performance erhe-
blich verbessern, aber wir onnen diesbez¨uglich nichts ¨uber andere Applikationen sagen.
Wenn Sie andere Applikationen mit der gepatchten Version der Bibliothek linken oder eine
gepatchte gemeinsam benutzte (shared) Version bauen und auf Ihrem System installieren,
tun Sie das auf eigenes Risiko, was andere Applikationen betrifft, die von LinuxThreads
abh¨angen.
Wenn Sie ahrend der Installation von MySQL irgend welche seltsamen Probleme bekom-
men oder gebr¨auchliche Utilities angen bleiben, ist es sehr wahrscheinlich, dass diese en-
tweder Bibliotheks- oder Compiler-bezogen sind. In diesem Fall wird die Benutzung unserer
Bin¨ardatei sie beheben.
Ein bekanntes Problem der Bin¨ardistribution ist, dass Sie auf ¨alteren Linux-Systemen, die
libc benutzen (wie RedHat 4.x oder Slackware) nicht-schwere (non-fatal) Probleme mit
der Au߬osung von Hostnamen bekommen. Siehe Abschnitt 3.1.1 [Linux-RPM], Seite 56.
Wenn Sie LinuxThreads benutzen, werden Sie feststellen, dass mindestens drei Prozesse
laufen. Das sind in Wirklichkeit Threads. Es gibt einen Thread f¨ur den LinuxThreads-
Manager, einen Thread, um Verbindungen zu handhaben und einen Thread, um Alarme
und Signale zu handhaben.
Seitenansicht 117
1 2 ... 113 114 115 116 117 118 119 120 121 122 123 ... 767 768

Kommentare zu diesen Handbüchern

Keine Kommentare