Ich habe die Seite auf drupal gemacht
Meine Seite hat 7500 Benutzer und ungefähr (20 bis 50 ohne eingeloggt) (2 bis 10 eingeloggte) Benutzer sind online (und das ist kein starker Verkehr, denke ich)
Die Site befindet sich auf einem dedizierten Server. Ich habe Einstellung in der Leistung von drupal admin aktiviert und auch memcache und eaccelerator
installiertIch habe in Abfrageprotokollen nach dem Modul "devel" gesucht. es feuert insgesamt 600 bis 900 Abfragen auf jeder Seite
Wenn ich den Patch von path.inc installiert habe, um die Abfragen von drupal_look_path()
zu reduzieren. Es hat Abfragen auf rund 400 reduziert
Ich habe auch einige positive Änderungen in der mysql ( my.cnf
) Datei gemacht, aber immer noch gibt es viele gleiche Abfragen, die immer wieder von user_load()
function ausgeführt werden
Ich habe 60 bis 70 Module aktiviert und alle sind voll belegt. Ich kann die Module nicht entfernen
Noch läuft die Seite langsam, es dauert ca. 10 bis 15 Sekunden
Jetzt weiß ich nicht, warum die Seite so langsam läuft
Bitte, jede Art von Vorschlägen sind willkommen
Einige zusätzliche Dinge, die Sie sich ansehen sollten:
Installieren Sie ein Tool wie Yslow / PageSpeed, um zu sehen, wie viel von diesen 10-15s Client- und Serverzeit sind.
Installiere XhProf (auf einer Entwicklungssite, nicht live) zusammen mit Devel, um zu sehen, welche Funktionen am meisten Zeit verbrauchen. Schauen Sie sich diese zuerst an. Bearbeiten, jetzt mit Link: Ссылка
Die Verwendung von pressflow könnte etwas helfen, aber da Sie den path.inc-Patch bereits verwenden, wahrscheinlich nicht so viel.
Sie haben erwähnt, dass Sie Memcache installiert haben. Hast du auch das Memcache-Modul installiert und das Cache-Plugin so konfiguriert, dass Memcache verwendet wird?
EDIT: Ja, der Wechsel zu InnoDB kann helfen. Einer der Hauptleistungsvorteile von InnoDB ist das Sperren auf Zeilenebene (im Gegensatz zum Sperren von MyISAM auf Tabellenebene), was bedeutet, dass mehrere INSERT / UPDATE-Abfragen für dieselbe Tabelle sich gegenseitig nicht blockieren, es sei denn, dies ist wirklich notwendig. InnoDB funktioniert jedoch nicht ohne weiteres gut, Sie müssen Ihre MySQL-Konfiguration für Ihre spezifische Site wirklich genau abstimmen. Dies ist also ein Schritt, den Sie nur vorsichtig und nach dem Testen und Optimieren auf einer Entwicklungssite durchführen sollten. Es gibt bereits verschiedene Fragen auf dieser Seite und anderswo über InnoDB Tuning ...
Alles andere ist dann ortsspezifisch und hängt von den Modulen ab, die Sie verwenden. Aber vor allem Dinge wie komplexe node_access Setups und mehrere Sprachen (i18n!) Neigen dazu, entweder langsame Abfragen und / oder eine Menge von ihnen zu verursachen.
Nicht alle Module nutzen die Caching-Mechanismen, die Sie im Bereich der Performance-Einstellungen einschalten können. Es würde sich lohnen, herauszufinden, welche die langsamsten Abfragen durchführen und versuchen, die Entwickler dazu zu bringen, sie zu verbessern.
Prüfen Sie alternativ, ob Sie mit weniger Modulen etwas erreichen könnten. Einige Module überlappen sich etwas in der Funktionalität, so dass Sie möglicherweise in der Lage sind, die Funktionsweise der Site ein wenig zu reorganisieren.
Zusätzlich müssen Sie prüfen, ob Ihre Einstellungen MySQL genug Speicher für diese Abfragen erlauben. Die meisten MySQL-Distributionen kommen mit verschiedenen Versionen von my.ini, die als "klein", "mittel", "riesig" usw. gekennzeichnet sind. Kopieren Sie die "große" in my.ini (sichern Sie die alte zuerst) und starten Sie die Datenbank neu, um zu sehen, ob Das Ausfüllen aller Cache-Größen macht einen Unterschied. Möglicherweise haben Sie dort einen Flaschenhals, aber es kann schwierig sein herauszufinden, welche Einstellung es verursacht.
Gleiches gilt für PHP. Setzen Sie memory_limit in der php.ini auf 500MB oder etwas und schauen Sie, ob es hilft. Natürlich können Sie dies nicht tun, abhängig von Ihren Hosting-Vereinbarungen, aber es wird eine mögliche Ursache (oder nicht) beseitigen, wenn Sie können.
Die Leistung Ihrer Drupal-Website hängt auch davon ab, wie gut Ihre Hosting-Plattform auf Drupal abgestimmt ist. Drupal erfordert eine spezielle Optimierung der LAMP-Stack-Komponenten. Sie können Drupal-spezifische Hosting-Unternehmen Ссылка ausprobieren, damit Ihre Website schneller läuft.
vor dem Problem der Drupal-Langsamkeit. Aber habe ein ganz anderes Problem als die anderen erwähnten.
Ich habe den gesamten Inhalt auch den Drupal-Header für eine Drupal-Seite eines bestimmten Inhaltstyps deaktiviert.
Die Ladezeit für diese Seite beträgt mehr als 20 Sekunden!
Ich habe Hilfe von YSlow und NET Firebug Panels genommen.
Als ich sie ansah, bemerkte ich:
Die Einbeziehung von JS- und CSS-Dateien dauert nur 3 bis 2 Sekunden, und es gibt einige Einschlüsse, die als Ergebnis 20 Sekunden brauchen.
Aber ich kann nicht herausfinden, warum die js und css Einschlüsse so viel Zeit brauchen. (Dazu gehören auch normale Drupal Core js und CSS-Dateien)
Tags und Links php drupal drupal-6 drupal-7 drupal-modules