zurück zum Artikel

MySQL skaliert unter FreeBSD 7.0 besser als unter Linux

Mirko Dölle

Benchmarks des FreeBSD-Projekts haben gezeigt, dass MySQL unter FreeBSD 7.0 bei vielen Clients mehr Transaktionen pro Sekunde abwickeln kann als unter Linux. Mit Googles malloc()-Implementation holt Linux jedoch wieder auf.

Vergleichende Benchmarks des FreeBSD-Projekts haben ergeben [1], dass MySQL unter FreeBSD 7.0 besser skaliert als unter Fedora Core 6. Jeff Roberson und Kris Kennaway stellten auf zwei Achtfach-Opteron-Systemen einen deutlichen Leistungseinbruch [2] unter Linux fest, wenn er Datenbank-Benchmark SysBench [3] mit mehr Client-Threads arbeitet als Prozessoren zur Verfügung stehen. Unter FreeBSD 7.0 hingegen blieb die Zahl der Transaktionen pro Sekunde nahezu unverändert hoch.

Was die FreeBSD-Entwickler als Erfolg ihrer Scheduler-Verbesserungen verbuchen, scheint laut Anton Blanchard [4], Maintainer der 64-Bit-PPC-Erweiterung des Linux-Kernels, in Wirklichkeit ein Skalierungsproblem der Speicherreservierungsfunktion malloc() in der Linux-Standard-Bibliothek Glibc zu sein. Blanchert tauschte auf seinem Vierfach-PPC-System das Standard-Malloc gegen die Implementierung von Google [5] aus und korrigierte einen fehlerhaften Scheduler-Aufruf des MySQL-Daemon. Damit verschwand auf seiner Maschine das vom FreeBSD-Projekt entdeckte Skalierungsproblem. Ein neuer Vergleich von FreeBSD 7.0 und Linux mit Google-Malloc steht noch aus. (mid [6])


URL dieses Artikels:
https://www.heise.de/-156669

Links in diesem Artikel:
[1] http://people.freebsd.org/~kris/scaling/mysql.html
[2] http://jeffr-tech.livejournal.com/5705.html
[3] http://sysbench.sf.net
[4] http://ozlabs.org/~anton/linux/sysbench/
[5] http://code.google.com/p/google-perftools/
[6] mailto:mid@ct.de