Performanceprobleme mit aktueller Version
Moderator: mirko
Ja ich musste Änderungen an verschiedenen Tabellen intern durchführen, weil einige MySQL-Versionen auf \"utf-8\"gar nicht oder falsch reagieren = latin verwenden. Bei einigen MySQL-Versionen funktionieren auch manche SQL-Anweisungen nicht, d.h. es müssen einige Felder unbedingt als latin definiert sein.
Ok, danke für die Antwort.
Beim nächsten Versand werde ich es dann ohne Empfängergruppen probieren. Dann gibt es zwar mehr Mailinglisten, aber das sollte ja (bis auf das mehrfache Speichern der Empfänger) kein Problem sein.
Kann es sein, dass mit dem letzten Update die collations für alle Tabellen und Spalten auf utf8-general-ci gesetzt werden? Vorher wurden die Standardwerte vom Server genutzt (bei mir utf8-unicode-ci). Das hat zur Folge, dass es bei neuen Mailings zu Problemen kommen kann (Zusammenfassung und Regelseite), da Spalten mit unterschiedlichen Collations verglichen werden.
Glücklicherweise ließ sich das im DB-Server schnell wieder korrigieren.
MfG Martin
Beim nächsten Versand werde ich es dann ohne Empfängergruppen probieren. Dann gibt es zwar mehr Mailinglisten, aber das sollte ja (bis auf das mehrfache Speichern der Empfänger) kein Problem sein.
Kann es sein, dass mit dem letzten Update die collations für alle Tabellen und Spalten auf utf8-general-ci gesetzt werden? Vorher wurden die Standardwerte vom Server genutzt (bei mir utf8-unicode-ci). Das hat zur Folge, dass es bei neuen Mailings zu Problemen kommen kann (Zusammenfassung und Regelseite), da Spalten mit unterschiedlichen Collations verglichen werden.
Glücklicherweise ließ sich das im DB-Server schnell wieder korrigieren.
MfG Martin
Kurios das ganze. Ich habe gestern abend um 21.00 das Mailing abgeschickt. Zu diesem Zeitpunkt hat der MySql Server bei jedem Batch ca. 1,8GB an temporären Daten auf die Platte ausgelagert. Heute morgen waren es 1,3GB. Mittlerweile muss er gar nichts mehr auslagern (vermutlich ist die Ergebnismenge des aufwendigen Joins klein genug) und der Server arbeitet endlich mit der vollen Geschwindkeit.
Ich weiß ja nicht genau, was für Abfragen gemacht werden, aber wenn am Anfang sämtliche Empfänger mit dem Datensatz des Mailings gejoint werden, dann dürfte das ca. 2GB an Ergebnissen liefern (grob überschlagen: 100k Empfänger, 20KB Nachrichtengröße). Da ich derzeit keine Queries logge, ist das jetzt nur eine Vermutung.
Ich weiß ja nicht genau, was für Abfragen gemacht werden, aber wenn am Anfang sämtliche Empfänger mit dem Datensatz des Mailings gejoint werden, dann dürfte das ca. 2GB an Ergebnissen liefern (grob überschlagen: 100k Empfänger, 20KB Nachrichtengröße). Da ich derzeit keine Queries logge, ist das jetzt nur eine Vermutung.
Ich habe keine Regeln definiert. Es sind zwei Gruppen ausgewählt, mit jeweils ca. 45000 Empfängern.
Der Versand erfolgt per CronJob.
Der MySql Server muss bei jeder dieser großen Abfragen pagen - dabei lagert er ca. 1.3 GB an Daten auf die Festplatte aus. Das sorgt im Endeffekt dafür, dass die Abfrage so ewig lange dauert. Mir ist nur einfach nicht klar, warum die Abfrage für den Server überhaupt so problematisch ist. Er hat zur Zeit auch keinerlei sonstige Last.
MfG Martin
Der Versand erfolgt per CronJob.
Der MySql Server muss bei jeder dieser großen Abfragen pagen - dabei lagert er ca. 1.3 GB an Daten auf die Festplatte aus. Das sorgt im Endeffekt dafür, dass die Abfrage so ewig lange dauert. Mir ist nur einfach nicht klar, warum die Abfrage für den Server überhaupt so problematisch ist. Er hat zur Zeit auch keinerlei sonstige Last.
MfG Martin
Ja die SQL-Abfrage ist geändert, damit es schneller geht.
Bei jedem Aufruf muss er natürlich seine SQL-Abfrage machen, um die nächsten Empfänger zu erhalten, das kann natürlich etwas dauern, wenn noch diverse Regeln definiert sind. Für den Fall braucht man einen starken Server.
Ich habe es gerade mit 250.000 Datensätzen (30 in der Blockliste, wobei keiner in der Blockliste in den 250.000 vorkommt) probiert, um mal zu sehen, wie es sich dann so verhält, läuft 1A. Natürlich habe ich den Versand dann abgebrochen, da ich meinen eigenen Server nicht sinnlos mit 250.000 belasten will. Der Testserver ist ein steinalter Linux-Server mit 512 MB RAM, CPU weiss ich nicht, auch steinalt.
Hast du Regeln definiert? Werden Gruppen beim Versand verwendet? Ist das Versand per CronJob-Script oder Live im Browserfenster?
Bei jedem Aufruf muss er natürlich seine SQL-Abfrage machen, um die nächsten Empfänger zu erhalten, das kann natürlich etwas dauern, wenn noch diverse Regeln definiert sind. Für den Fall braucht man einen starken Server.
Ich habe es gerade mit 250.000 Datensätzen (30 in der Blockliste, wobei keiner in der Blockliste in den 250.000 vorkommt) probiert, um mal zu sehen, wie es sich dann so verhält, läuft 1A. Natürlich habe ich den Versand dann abgebrochen, da ich meinen eigenen Server nicht sinnlos mit 250.000 belasten will. Der Testserver ist ein steinalter Linux-Server mit 512 MB RAM, CPU weiss ich nicht, auch steinalt.
Hast du Regeln definiert? Werden Gruppen beim Versand verwendet? Ist das Versand per CronJob-Script oder Live im Browserfenster?
Hallo,
ich habe gestern auf die aktuelle Version geupdated, in der Hoffnung, dass diese besser mit einer größeren Anzahl von Empfängern zurechtkommt (ca. 91000). Mit der alten Version war es nicht möglich, die Regel- oder Zusammenfassungsseiten aufzurufen, da die Datenbankabfrage(n) bis zu 20 Minuten liefen.
Mit der neuen Version schien dieses Problem behoben zu sein. Bis ich den Versand gestartet habe. Anscheinend wird jetzt vor jedem Batch die aufwendige(n) Abfrage(n) durchgeführt, was jeweils ca. 10 min dauert.
Der Datenbankserver sollte für die paar Datensätze eigentlich locker ausreichen. 1,28GB RAM und ein Core vom Quad-Core Xeon E5405.
Wäre schön, wenn da möglichst schnell Abhilfe geschaffen werden könnte.
MfG Martin
ich habe gestern auf die aktuelle Version geupdated, in der Hoffnung, dass diese besser mit einer größeren Anzahl von Empfängern zurechtkommt (ca. 91000). Mit der alten Version war es nicht möglich, die Regel- oder Zusammenfassungsseiten aufzurufen, da die Datenbankabfrage(n) bis zu 20 Minuten liefen.
Mit der neuen Version schien dieses Problem behoben zu sein. Bis ich den Versand gestartet habe. Anscheinend wird jetzt vor jedem Batch die aufwendige(n) Abfrage(n) durchgeführt, was jeweils ca. 10 min dauert.
Der Datenbankserver sollte für die paar Datensätze eigentlich locker ausreichen. 1,28GB RAM und ein Core vom Quad-Core Xeon E5405.
Wäre schön, wenn da möglichst schnell Abhilfe geschaffen werden könnte.
MfG Martin