Author Topic: Performance-Probleme MySQL LockTable / Select  (Read 4632 times)

0 Members and 1 Guest are viewing this topic.

Offline zimba

  • Newbie
  • *
  • Posts: 33
    • View Profile
Performance-Probleme MySQL LockTable / Select
« on: April 06, 2012, 02:12:17 PM »
Habe 4 images auf einem Power-Server laufen, da ich aber bei hohen Zugriffszahlen immer wieder Probleme habe, habe ich den Support angefragt ob es eventuell an den Servereinstellungen liegt.

Diese haben mit folgendes geschrieben:

Quote
Die Problematik hängt nicht mit unserer Änderung zusammen. Wir stellten allerdings fest, dass Sie die MySQL Tabellen bei der Abfrage locken. Das bedeutet, dass immer nur eine Query auf die entsprechende Tabelle ausgeführt werden können und alle anderen Verbindungen warten, bis die erste fertig ist. Dadurch kann es bei vielen Abfragen sporadisch zu Verzögerungen kommen. Es ist nicht empfehlenswert für SELECT Abfragen Tabellen zu locken.

Auf die Nachfrage was das denn genau ist und was man da machen muss sagten sie:

Quote
"Diese Umstellung muss in Ihren Skripten vorgenommen werden. Diese führen vor dem SELECT ein LOCK TABLE aus."

Kann mir da wer da Licht in die Sache bringen, gibt es da eventuell schon Erfahrungswerte oder eine Mod dazu ?

Rembrandt

  • Guest
Re: Performance-Probleme MySQL LockTable / Select
« Reply #1 on: April 06, 2012, 03:36:44 PM »
Hi!
...
Quote
Die Problematik hängt nicht mit unserer Änderung zusammen. Wir stellten allerdings fest, dass Sie die MySQL Tabellen bei der Abfrage locken.....
In 4images wird der Befehl  "LOCK TABLES"  nicht verwendet.

mfg Andi

Offline zimba

  • Newbie
  • *
  • Posts: 33
    • View Profile
Re: Performance-Probleme MySQL LockTable / Select
« Reply #2 on: April 06, 2012, 11:49:50 PM »
Kannst du mir sagen woran das liegen könnte, mir schmiert 4images immer ab wenn ich trafik drauf lassen. Die vom Support haben das wie oben beschrieben das es an dem liegen solle. Auf neuerliche Anfrage sagen sie das es zu 100% am Script liegt...


Update: hab da noch ein Feedback bekommen:

Wir haben Ihre Anfrage geprüft und möchten in diesem Zusammenhang erneut auf die aktuellen Slow-Query-Logfiles hinweisen, welche Sie im CGI-Debugger finden können. Auffällig viele langsame Abfragen konnten wir dort von der Datenbank "PLATZHALTER":

SELECT image_id, cat_id, image_name, image_media_file, image_thumb_file
         FROM 4images_images
         WHERE image_active = 1 AND cat_id = 5
         ORDER BY image_date DESC, image_id DESC

Wir hoffen, dass wir Ihnen mit diesem Hinweis weiterhelfen konnten, damit das Problem gelöst wird.



- Kann ich da was weglassen das das flüssiger wird ?
« Last Edit: April 07, 2012, 03:13:51 AM by zimba »

Rembrandt

  • Guest
Re: Performance-Probleme MySQL LockTable / Select
« Reply #3 on: April 07, 2012, 07:49:58 AM »
Das ist doch ein 08/15 Abfrage, weniger geht fast nicht nicht mehr.
Was du tun kannst ist folgendes, suche in der includes/functions.php:

// define("PRINT_STATS", 1);
// define("PRINT_QUERIES", 1);

und ersetze es mit:

 define
("PRINT_STATS"1);
 
define("PRINT_QUERIES"1);


rufe jetzt die einzelnen Seiten die so extrem langsam sind auf , ganz unten auf der Webseite siehst du jetzt bei welcher Seite, wieviele und wie lange jede einzelene SQL abfrage dauert.

Als Bspl:
Die komplette 4images Startseite mit 150 der neuesten Bilder:
Quote
Page generated in 1.670070 seconds with 9 queries,..


Die SQL Abfrage der neuesten Bilder:
Quote
SELECT i.image_id, i.cat_id, i.user_id, i.image_name, i.image_description, i.image_keywords, i.image_date, i.image_active, i.image_media_file, i.image_thumb_file, i.image_download_url, i.image_allow_comments, i.image_comments, i.image_downloads, i.image_votes, i.image_rating, i.image_hits, i.image_Model, i.image_DateTimeOriginal, i.image_ISOSpeedRatings, i.image_ExposureTime, i.image_FNumber, i.image_FocalLength, i.image_LensType, i.image_ExposureBiasValue, i.image_ApertureValue, i.image_MaxApertureValue, i.image_MeteringMode, i.image_Flash, i.image_ExposureProgram, i.image_ExposureMode, i.image_WhiteBalance, i.image_GPSLatitudeRef, i.image_GPSLatitude, i.image_GPSLongitudeRef, i.image_GPSLongitude, i.image_GPSAltitude, i.image_GPSTrack, i.image_caption, i.image_caption_writer, i.image_headline, i.image_special_instructions, i.image_byline, i.image_byline_title, i.image_credit, i.image_source, i.image_object_name, i.image_date_created, i.image_city, i.image_state, i.image_country, i.image_original_transmission_reference, i.image_category, i.image_supplemental_category, i.image_keyword, i.image_copyright_notice, c.cat_name, u.user_name FROM (4images_images i, 4images_categories c) LEFT JOIN 4images_users u ON (u.user_id = i.user_id) WHERE i.image_active = 1 AND c.cat_id = i.cat_id AND i.cat_id NOT IN (0, 61) ORDER BY i.image_date DESC LIMIT 150
Querytime: 0.085

Also quasi nichts. :) Poste deine Ergebniss mal .

mfg Andi

Offline Nosferatu

  • Full Member
  • ***
  • Posts: 230
    • View Profile
    • Project-Firepower
Re: Performance-Probleme MySQL LockTable / Select
« Reply #4 on: April 07, 2012, 11:07:05 AM »
Also ich kämpfe auch ziemlich mit der performance.

Bei mir liegt es jedoch nicht an der Billdergallery, sondern am Wordpress und die plugins, die fressen immer den ganzen speicher...

Hast du am Server "nur" die Gallery drauf ?