+ Antworten
Ergebnis 1 bis 1 von 1

Thema: Performancetuning für myPMS enhanced

  1. #1
    Neu an Board
    Registriert seit
    13.01.2006
    Beiträge
    33
    Bedankte sich
    3
    Erhielt 3 Danksagungen
    in 3 Beiträgen

    Standard Performancetuning für myPMS enhanced

    Nachdem wir große Performanceprobleme mit unserem Server hatten war ich gezwungen nach dem Flaschenhals zu suchen und bin dabei auf die PMS Komponenten gestoßen. Es gibt leider einige Abfragen die durch fehlende Indices sehr langsam laufen. Da der Programmierer der Komponente meine Vorschläge nicht umsetzen wollte mache ich sie jetzt auf diesem Wege der allgemeinheit zugänglich. Eins vorweg, ich übernehme keine Haftung für die hier vorgschlagenen Tunings, sprich wer nicht weiss war er tut sollte es lassen

    - Die Abfragen für die Anzahl der PMS im Trash habe ich durch folgende ersetzt (diese Abfrage steht z.B. in der pms.php in zeile 100). Bringt aber nur was nachdem der entsprechende Index (siehe unten) gesetzt wurde.

    select (select count( id ) FROM mos_pms WHERE username = '$my->username' AND inbox = '0' ) + ( select count( id ) FROM mos_pms WHERE whofrom = '$my->username' AND sent_items = '0' )

    Warum? Naja, ganz einfach es ist schneller:

    mysql> SELECT count(id) FROM mos_pms WHERE (username='braindead' AND inbox='0') OR (whofrom='braindead' AND sent_items='0');
    +-----------+
    | count(id) |
    +-----------+
    | 17 |
    +-----------+
    1 row in set (0.15 sec)

    mysql> select (select count( id ) FROM mos_pms WHERE username = 'braindead' AND inbox = '0' ) + ( select count( id ) FROM mos_pms WHERE whofrom = 'braindead' AND sent_items = '0' );
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | (select count( id ) FROM mos_pms WHERE username = 'braindead' AND inbox = '0' ) + ( select count( id ) FROM mos_pms WHERE whofrom = 'braindead' AND sent_items = '0' ) |
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    | 17 |
    +------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
    1 row in set (0.00 sec)

    mysql>

    Sieht nicht nach viel aus, macht aber unter load doch einiges aus (bei mehr als 100 Usern online hat das ganze hier den MySql und die Platte extrem entlastet).

    - Ich hab den ein oder anderen index über die #__pms tabelle gelegt:

    Zum beschleunigen der Inbox reads:
    username_in username + inbox

    Zum beschleuningen der Outbox reads:
    whofrom_sent whofrom + sent_items

    Zum beschleunigen der module reads:
    username_read username + readstate

    Ich ich hab noch ein paar Änderungen eingebaut, aber die müsste ich erst in die neue Version übernehemen. Das Problem ist das diese "Hacks" sehr speziell sind da sie nur unter extrem hohem Load sinn machen (also z.B. die unread mails in der Session Tabelle ablegen für das login modul). Diese würde ich auf wunsch auch posten (ist leider recht viel arbeit und macht das updaten nicht einfacher).

    Sollte jemand das Joomlaboard getunt haben (100 SQLs pro Seite sind einfach zu viel) wäre ich sehr dankbar wenn er seine Ergebnisse hier mal posten könnte

  2. Erhielt Danksagungen von:


+ Antworten

Ähnliche Themen

  1. myPMS, myPMS II, myPMS enhanced
    Von dalx im Forum Joomla Komponenten
    Antworten: 5
    Letzter Beitrag: 25.06.2009, 05:07
  2. myPMS enhanced - Nachrichtenanzeige
    Von xconsole im Forum Mambo Komponenten
    Antworten: 5
    Letzter Beitrag: 14.03.2006, 14:54
  3. Berechtigungsproblem in myPMS enhanced
    Von sascha1980 im Forum Joomla Komponenten
    Antworten: 1
    Letzter Beitrag: 18.01.2006, 15:46
  4. Modul für myPMS Enhanced 1.2.2?!
    Von D4nt3 im Forum Joomla Komponenten
    Antworten: 4
    Letzter Beitrag: 08.11.2005, 10:01
  5. Community Builder Enhanced & MyPMS
    Von Alexis im Forum Mambo Komponenten
    Antworten: 9
    Letzter Beitrag: 14.07.2005, 17:14

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein