Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Drupal Jobs ›

Suche MySQL und PHP Experten mit Drupal 7.X Erfahrung für Optimierung der Datenbankabfragen

Eingetragen von SilverSunrise1981 (60)
am 30.10.2012 - 23:49 Uhr in
  • Drupal Jobs
  • Drupal 7.x

Hallo an alle Drupal/PHP/MySQL-Experten und Programmierer,

ich betreibe schon seit einigen Jahren eine Website Community auf der Basis von Drupal. Kürzlich habe ich diese von Drupal 5.x auf Drupal 7.x aktualisiert. Seitdem habe ich ernste Probleme mit der Website (vor allem mit den Datenbankabfragen).

Problembeschreibung:

Ständig wird die Verbindung zum Datenbankserver unterbrochen (PDOException-Fehlermeldung) oder die Verbindung dauert sehr lange.

Die Problematik ist meiner Vermutung nach vor allem bei der Datenbank Table: cache_form

Die Tabelle ist 35GB groß. Dort werden in der Column "data" im longblob-Format Daten gespeichert - pro Row zwischen 3kB und 100kB. Von dieser Art gibt es dann 1.3 Mio Rows.

Ein einzelnes SELECT in dieser Tabelle mit ORDER BY-Statement hat jetzt über 900
Sekunden gedauert.

Bedingt durch dieses riesige Table geht der mysqld OOM, wodurch dann andere Tables crashen, die nicht repariert werden können, weil o.g. Problem mit riesigem Table besteht.

Vor allem folgende Table crasht immer wieder (fast täglich):

- accesslog

Ich dachte immer, dass im Normalfall der Cron diese Tabelle (cache_form und cache_menu) mit löschen sollte. Ich habe den Cron aber schon mehrmals laufen lassen und dann geschaut, wie groß die Tabelle ist. Leider hat das nichts gebracht.

Die Tabellen cache_form und cache_menu füllen sich einfach zu schnell mit Daten. Dann habe ich versucht, die Tabellen direkt in der Datenbanken per PHPmyadmin zu leeren (nicht löschen). Allerdings sind die Tabellen im Handumdrehen wieder voll mit Einträgen und über 20 GB groß.

Wie kann das sein, dass so viele Datenbankeinträge in solch kurzer Zeit angelegt werden? Bin ich Opfer einer Spam-Attacke? Ich habe im Durschnitt etwa 1000 Besucher pro Tag.

Versuch eines Patches (leider erfolglos):

Ich habe in Bezug auf dieses Problem auch den Vorschlag von einem Forumsmitglied hier bekommen, in diesem Issue: http://drupal.org/node/230374 ein Patch / Vorgehen anzuwenden. Ich verstehe das Vorgehen nur nicht ganz. Gilt dieses nur für Drupal 6.x?

Weiterhin sorgt der Patch nach meinem Verständnis lediglich dafür, dass die Daten nach einer kürzeren Zeit aus dem Cache wieder gelöscht werden.

Problembehandlung:

Kann man aber die Datenbankstruktur bzw. die Drupal 7.x Installation soweit optimieren, dass sich auch gar nicht mehr so schnell so viele Daten ansammeln?

Falls es sich um einen Spam-Angriff handelt, wie kann ich mich davor schützen?

Auftrag:

Ich suche nun einen Drupal/PHP/MySQL-Experten, der dieses Problem für mich löst. Bitte senden Sie mir bei Interesse an dem Job eine kurze Einschätzung der notwendigen Arbeitszeit und der ungefähren Kosten. Dafür wäre ich Ihnen sehr dankbar. Abrechnung über eine Rechnung ist erwünscht.

Bitte Nachrichten hier über das Forum oder an info[at]magicofword.com.

Vielen Dank für Ihre Unterstützung!

‹ Searching for a Freelancer to help with my site www.ibvodcasting.com Anpasung XML-Importdatei für Modul Import HTML ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Anleitung zu einem potentiellen Patch

Eingetragen von SilverSunrise1981 (60)
am 30.10.2012 - 23:52 Uhr

Hallo nochmal,

vielleicht ist dieser Beitrag noch hilfreich:

http://drupal.org/node/930876

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Silver Sunrise,

Eingetragen von Hyp1 (1463)
am 14.11.2012 - 16:13 Uhr

Evtl. kann Dir folgendes helfen:
1.
Ist Deine DB Engine InnoDB oder ISAM?
MYISAM ist da etwas schneller (ohne indexe und relationen welche drupal nicht nutzt) und benötigt weniger resourcen.
2.
In Deinem Select Statement holst du den Blob, oder durchsuchst Du gar den Blob?
Hast du das SELECT Statment durch einen LIMIT begrenzt und holst nur die ID des Blobs?
Das ist leider nicht ersichtlich

Vermutlich wirst Du aber um eine Architektur Umstellung nicht herumkommen.
Der Drupal,Apache,PHP,MYSQL Stack ist für wirklich performante und Datenbanklastige
Anwendungen einfach nicht geeignet (memory limits, timeouts, fehlende thread kontrolle).

Für eine optimale Performance würde ich hier eine Umstellung von einem mehrschitigen System
in eine mehrschichtige Architektur empfehlen.

MfG

Hype

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke

Eingetragen von SilverSunrise1981 (60)
am 15.11.2012 - 00:08 Uhr

Hallo Hype,

vielen Dank für deine Antwort.

Ich kann mittlerweile aber sagen, dass mir hier von professioneller Seite sehr geholfen wurde. Meine Website läuft jetzt schneller denn je. Lag wohl an einem unsauberen Upgrade von Drupal 5 auf Drupal 7. Dabei wurden einige DB Tabellen einfach fälschlicherweise mit migriert und auch noch bedient. Das wurde nun behoben mit einer sauberen Drupal 7 Neuinstallation.

Besten Dank an alle Froumsmitglieder an dieser Stelle!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 4 Tagen 21 Stunden
  • Guckst du hier: step by step
    vor 4 Tagen 11 Stunden
  • Guckst du hier: step by step
    vor 4 Tagen 11 Stunden
  • Ich habe ja keine Angst vor
    vor 1 Woche 6 Tagen
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 2 Wochen 2 Tagen
  • Vielen Dank erst einmal, aber
    vor 2 Wochen 3 Tagen
  • Du hast die "Trusted host
    vor 2 Wochen 4 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 4 Wochen 3 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 4 Wochen 6 Tagen
  • Arrrrg. Nix Tabelle :-D /*
    vor 9 Wochen 1 Tag

Statistik

Beiträge im Forum: 250284
Registrierte User: 20498

Neue User:

  • Inga GuAph
  • Robertolix
  • DavidBit

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 24 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association