Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Katastrophale MySQL Client Performance bei CentOS mit PHP

Frage Linux RedHat, CentOS, Fedora

Mitglied: florian.rhomberg

florian.rhomberg (Level 1) - Jetzt verbinden

27.04.2010 um 19:46 Uhr, 6123 Aufrufe, 2 Kommentare

Auf meinem Centos 5 Server ist die MySQL Client Performance von PHP 5.1. katastrophal

Hallo!
Ich versuche derzeit einen alten SUSE Linux Webserver durch zwei virtuelle Webserver mit CentOS zu ersetzen. Diese Maschinen laufen auf einem VMWare ESXi Server und haben jeweils 1024MB Ram. Ich habe den Apache Server mit PHP 5.1.6 (aktuelle Version im Repository) und MySQL Unterstützung installiert. Der MySQL Server ist auf einer speraten dezidierten Maschine. Neben PHP läuft auch ein Tomcat Server mit modjk. Mein Problem ist, dass die MySQL Performance mit PHP auf diesem Server wirklich katastrophal ist. Wir haben moodle drauf laufen und die Performance war so katastrophal, dass man nicht arbeiten konnte. Erst als wir die moodle Datenbank wieder auf den alten Server umgeleitet haben ist die Perfomance wieder normal.

Hier unsere Konfiguration:

Windows 2003 Server mit MySQL 5.1.46
Centos 5.4 mit MySQL Client Library 5.0.77

Die Java Anwendungen haben hingegen eine gute MySQL Performance. Auch bei der Typo3 Homepage die auf dem alten SUSE Linux Server läuft und die Datenbank auch auf dem Windows 2003 Server hat erkennt man keine Perfomance Probleme. Die Probleme treten nur bei PHP Anwendungen auf die vom CentOS auf den Windows 2003 DB Server zugreifen. Vom CentOS auf die alte MySQL DB auf dem Suse Linux tritt auch kein Perfomance Problem auf?

Jetzt meine Frage:
Der MySQL Server hat eine neuerer Version als die MySQL Client library, kann das wirklich die Ursache für dieses Problem sein? Wenn ja wie kann ich eine aktuellere MySQL Library installieren. Als ich das probiert habe passten die dependencies mit PHP nicht mehr. Im Repository gibt es leider auch keine aktuelleren Libraries.

Vielen Dank für eure Hilfe,
Florian
Mitglied: maretz
28.04.2010 um 06:52 Uhr
Moin,

die Antwort auf deine Frage lautet: 17!

Ok, ernsthaft: Natürlich kann die Biblethek das Problem sein - aber ehrlich gesagt glaube ich daran noch nicht. Die andere Option wäre: Lief dein Win-Server auch auf ner VM? Grade wenn du viele kleine Abfragen hast kann es zu nem Problem werden wenn es VMs sind. Denn da musst du ja immer den ganzen Kram mit virtueller Netzwerkkarte auf reale Netzwerkkarte (am VM-Server) erledigen, du musst warten bis auf der realen Netzwerkkarte etwas für dich frei ist (auch ne 100 MBit-Karte oder auch ne 10 GBit-Karte bekommt die Daten zwar schnell weg - aber wenn eine VM da jetzt einige tausend Anfragen an die DB stellt dann ist die Karte einfach mal belegt...). Dann kommt noch dazu das du ja praktisch noch nen NAT machst (zumindest meistens),... Und das alles kann bei ner Datenbank dann auch dafür sorgen das die Datenrate in den Keller geht...

Nächster Punkt ist natürlich auch etwas: Nen dedizierter SQL-Server ist zwar gut - wenn man aber extrem viel kleine Daten darein pusten will (z.B. Messwerte von einem Sensor - sagen wir mal 1000 pro Sekunde) und das Programm jeden Wert einzel speichern möchte dann kommt ggf. auch einfach das Netzwerk nicht mehr hinterher. Auch da gilt wieder: Egal ob du nun 1 MBit, 1 GBit oder 10 GBit hast - mehr als nen Paket kann keine Karte versenden. Und wenn man hier 1000x pro Sekunde sagt "Schick mal nen Insert" - dann hast du einfach ein Zeitproblem. Hier könnte man entweder die Software entsprechend anpassen (die Werte in den Speicher packen und dann einmal pro x Sekunden ein Insert mit mehreren Werten rauspacken) oder falls das nicht möglich ist versuchen das durch Technik zu umgehen (z.B. MySQL-Proxy oder als Hardcore-Lösung nen MySQL-Cluster aufbauen bei dem auf jedem Webserver auch gleich nen Node is...)

Ich glaube also es gibt da eine vielzahl von Möglichkeiten wo das Problem liegt. Das genau zu finden ist nun das Problem des Tages (rate mal warum nen DB-Admin mehr als nen normaler Sys-Admin verdient ;) ). Aber es einfach mal auf ne Client-Bib. zu werfen ist doch etwas zu simpel ;)
Bitte warten ..
Mitglied: florian.rhomberg
29.08.2010 um 19:49 Uhr
Hallo!
Ich konnte das Problem nicht direkt lösen. Ich verwende jetzt statt CentOS wieder Open Suse, hier ist die Performance deutlich besser. Wenn man den MySQL Server direkt auf der CentOS Maschine installiert ist die Geschwindigkeit sehr gut.

Gruß,
Florian
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
PHP
PHP MySQL Login (7)

Frage von Yanmai zum Thema PHP ...

PHP
MySQL-Abfrage mit php: Wert + true bzw. false (2)

Frage von tomolpi zum Thema PHP ...

Datenbanken
gelöst Eine Art Access, nur mit PHP und MySQL? (14)

Frage von McLion zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (12)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (8)

Frage von StefanT81 zum Thema Windows Server ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...