Zurück   netzwelt.de Forum > Blogs > Arthur Spooner

Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren

Bewertung: 2 Stimmen mit einer durchschnittlichen Bewertung von 5,00.

Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren

"Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren" bei Mister Wong speichern "Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren" bei YiGG.de speichern "Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren" bei Google speichern "Tipps & Tricks: vBulletin Forum optimieren / beschleunigen / Server-Last reduzieren" bei StumbleUpon speichern
Veröffentlicht: 03.03.2008 um 18:42 von Arthur Spooner
Aktualisiert: 20.04.2009 um 14:41 von Arthur Spooner (Update: 20.04.2009)

Wenn das vBulletin Forum mit ansteigenden Userzahlen immer langsamer oder die Last des Servers zu hoch wird, dann helfen schon einige wenige Optimierungen um das Problem in den Griff zu bekommen.

Mit den folgenden Optimierungen ließ sich die Performance des netzwelt.de Forums (über 130.000 User) um ca. 50 % bis 60 % steigern.



Wer ist online
Kontrollzentrum -> vBulletin-Einstellungen -> Wer ist online
  • Anzeige von Gästen, deaktivieren
  • IP-Adressen auflösen, deaktivieren

Kontrollzentrum -> Benutzergruppen verwalten -> Nicht registriert / Nicht angemeldet
  • Kann "Wer ist online" sehen, deaktivieren


CSS-Stylesheets als Dateien speichern, aktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Style und Sprache
Wichtig: Es muss ein Verzeichnis namens 'vbulletin_css' im Verzeichnis 'clientscript' angelegt werden, in dem der Webserver Dateien erstellen darf (777).


Templatenamen als Kommentar in HTML-Quelltext schreiben, deaktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Allgemeines


HTML-Ausgabe mit GZIP komprimieren, aktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Cookies und HTTP-Header

Einen Eintrag drunter den GZIP Kompressions-Grad auf 1 setzen. Ein höherer Wert treibt nur die Serverlast unnötig nach oben.


Forumsuche optimieren
Die Forensuche kann man optimieren in dem man der Tabelle "post" einen zusätzlichen Index verpasst. Dazu sollte man folgende Query ausführen:

Code:
ALTER TABLE "post" ADD INDEX "datelineuserid" ( "userid" , "dateline" );
Der zusätzliche Index benötigt ein Paar MB an zusätzlichen Speicherplatz.


Lebensdauer gecachter Beiträge erhöhen
Kontrollzentrum -> vBulletin-Einstellungen -> Servereinstellungen und Optimierungen

Den Wert sollte man auf mindesten 30 Tage setzen. Zu emfehlen sind 90 Tage.


Verzeichnisse/Scripte in der robots.txt ausschließen
Nicht relevante (unwichtige Inhalte für Suchmaschinenergebnisse) Inhalte sollten durch die robots.txt für die crawler gesperrt werden um keine zusätzliche Last zu erzeugen.

Als Grundeinstellung kann folgender Eintrag genutzt werden:

Code:
User-agent: *
Disallow: /forums/admincp/
Disallow: /forums/clientscript/
Disallow: /forums/cpstyles/
Disallow: /forums/customavatars/
Disallow: /forums/customprofilepics/
Disallow: /forums/images/
Disallow: /forums/modcp/
Disallow: /forums/ajax.php
Disallow: /forums/attachment.php
Disallow: /forums/calendar.php
Disallow: /forums/cron.php
Disallow: /forums/editpost.php
Disallow: /forums/global.php
Disallow: /forums/image.php
Disallow: /forums/inlinemod.php
Disallow: /forums/joinrequests.php
Disallow: /forums/login.php
Disallow: /forums/member.php
Disallow: /forums/memberlist.php
Disallow: /forums/misc.php
Disallow: /forums/moderator.php
Disallow: /forums/newattachment.php
Disallow: /forums/newreply.php
Disallow: /forums/newthread.php
Disallow: /forums/online.php
Disallow: /forums/poll.php
Disallow: /forums/postings.php
Disallow: /forums/printthread.php
Disallow: /forums/private.php
Disallow: /forums/profile.php
Disallow: /forums/register.php
Disallow: /forums/report.php
Disallow: /forums/reputation.php
Disallow: /forums/search.php
Disallow: /forums/sendmessage.php
Disallow: /forums/showgroups.php
Disallow: /forums/subscription.php
Disallow: /forums/threadrate.php
Disallow: /forums/usercp.php
Disallow: /forums/usernote.php
Natürlich kann man diese noch nach eigenen Bedürfnissen ergänzen.


.htaccess in die vhost.conf verschieben
Dieser kleine Trick bringt meiner Meinung nach die meiste Entlastung, nicht nur für das Forum.

Man sollte, falls möglich, die .htaccess in die vhost.conf (kann je nach OS variieren) verschieben da bei jedem Seitenaufruf geprüft wird ob die .htaccess überhaupt existiert und dann muss sie noch einmal ausgewertet werde. Das verursacht nur unnötige Datenzugriffe. Wenn die .htaccess aber in die vhost.conf verschoben wird, dann wird der Inhalt dieser in den RAM geladen und die Auswertung geht wesentlich schneller.

Wichtig: Nachdem die .htaccess verschoben wurde muss der Server neu gestartet werden, damit er sich den Inhalt in den RAM laden kann.


Yahoo Slurp Spider und Teoma/Ask Jeeves Spider ausbremsen
Diese beiden spider crawlen mehrere Tausend Seiten täglich und bringen kaum Trafik über die Suchmaschine. Deswegen kann man die beiden ohne Probleme etwas ausbremsen und denen "sagen", dass sie nur alle 60/90 Sekunden eine Seite aufrufen dürfen.

Dafür muss folgendes in die robots.txt eingetragen werden.

Yahoo Slurp Spider
Code:
User-agent: Slurp
Crawl-delay: 60
Teoma/Ask Jeeves Spider
Code:
User-agent: Teoma
Crawl-delay: 90
Nachtrag: In einem anderen Blogeintrag habe ich eine Liste mit bösartigen Spidern erstellt, die man ebenfalls in der robots.txt aussperren kann.


No-Cache HTTP-Header senden deaktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Cookies und HTTP-Header

Mit dieser Einstellung muss die Seite nicht jedes Mal neu berechnet werden, sondern wird teilweise im Browsercache abgelegt.


Hitzahl der Themen/Anhänge sofort aktualisieren, deaktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Servereinstellungen und Optimierungen


Wartezeit zwischen zwei Suchanfragen
Kontrollzentrum -> vBulletin-Einstellungen -> Suchmaschine: Einstellungen

Den Wert sollte man nicht auf 0 belassen, da die Forensuche sehr Lastintensiv ist


Bewertung eines Themas anzeigen, deaktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Forum: Themenanzeige (showthread)



Weitere Optimierungen
Die folgenden Optimierungen wurden von mir nicht verwendet, sollen aber auch hilfreich sein.


Anhänge in das Dateisystem verschieben
Kontrollzentrum -> Anhänge -> Anhangs-Speicherart

Das Gleiche gilt auch für Avatare.


Suche für Gäste, deaktivieren
Finde ich persönlich den Gästen gegenüber nicht besonders fair.


Automatische Suche nach ähnlichen Themen, deaktivieren
Kontrollzentrum -> vBulletin-Einstellungen -> Suchmaschine: Einstellungen

Sehr Lastintensiv aber auch nützlich

Generell sollte man die Forensoftware und Plugins regelmäßig auf neue Updates überprüfen.
Die Hersteller verbessern ihre Software mit jedem Update was sich oft positiv auf die Performance auswirkt. So bringt z.B. die aktuelle vBSEO Version (3.1) gegenüber den Vorgängern einen kleinen Geschwindigkeitsvorteil.

Update ( 19.12.2008 ):
Auf vbulletin.org wurde das Add-On vB Optimise 1.0.2 veröffentlicht, mit dem sich die Templates, Styles und Phrasen cachen lassen, was für eine Entlastung der Datenbank und für eine schnellere Ladezeit sorgt.

Die Messungen mit Hilfe von Microstats (vB-Add-On) haben im NW-Forum eine durchschnittliche Verbesserung der Ladezeit um 0.3 Sekunden und eine Einsparung von zwei DB-Queries ergeben.

Update ( 05.02.2009 ):
Bestimmte Funktionen und Features für Gäste ausstellen ist ja schön und gut aber manche Funktionen, die die Datenbank belasten und für Gäste eher uninteressant sind, lassen sich nicht separat abstellen. Da hilft ein einfacher Trick, den man mittels des vBulletin-Hook-Systems realisieren kann. Dafür erstellt man im AdminCP ein neues Plug-In (Add-ons & Plug-ins -> Plug-in hinzufügen) und wählt als Einstiegspunkt "global_start" aus.

Der Einstiegspunkt "global_start" bedeutet, dass das Plug-In bei jedem Seitenaufruf aufgerufen wird.

Nun kann man für Gäste ganz speziell Funktionen deaktivieren, die sich normalerweise nur global deaktivieren lassen. Dafür trägt man in das Feld "PHP-Code des Plug-ins" folgendes ein:

PHP-Code:
// Benutzergruppe prüfen
if ($vbulletin->userinfo['usergroupid'] == 1){
    
// Moderatoren-Spalte anzeigen
    
$vbulletin->options[showmoderatorcolumn] = false;

    
// Geburtstage anzeigen
    
$vbulletin->options[showbirthdays] = false;

    
// Mitarbeiter-Liste anzeigen
    
$vbulletin->options[forumleaders] = false;

    
// Weitere Funktionen
    // ...

In diesem Beispiel wird die Moderatoren-Spalte, die Geburtstagskinder und die Mitarbeiter-Liste für Gäste deaktiviert, da diese Informationen für sie relativ uninteressant sind. Ein positiver Nebeneffekt dabei ist, dass der Quellcode schlanker und die Anzahl an Links reduziert wird, was den Google-Bot freuen wird.

Die Einstellungen oben sind nur ein kleiner Auszug, wie sie auf netzwelt.de eingesetzt werden. Durch gezieltes Deaktivieren von Add-Ons oder Teilfunktionen dieser, kann man den einen oder anderen Datenbankzugriff sparen. Bei einigen Tausend oder Hunderttausend Gästen täglich kommt eine schöne Summe an Datenbankzugriffen zusammen, die man dem Server einfach abnimmt.

Update ( 20.04.2009 ):
Eine Kleinigkeit ist mir noch aufgefallen, die man Gästen ersparen kann, wenn man keine globalen Hinweise (integriert seit vBulletin 3.7.4) anzeigt, bzw. nur Hinweise für Mitglieder anzeigt, wozu ich eh aus SEO-Sicht raten würde.

Hinweise für Gäste, lassen sich mit der bereits oben genanten Methode, mit dem Plug-In, deaktivieren (Das spart bei Gästen pro Seitenaufruf mind. einen Datenbankzugriff). Man gaukelt dem System einfach vor, dass keine Hinweise verfügbar sind, indem man das Array "noticecache" "leert".

PHP-Code:
// Benutzergruppe prüfen
if ($vbulletin->userinfo['usergroupid'] == 1){
    unset(
$vbulletin->noticecache);

Hinweis: Wenn weitere Optimierungen oder Tipps und Tricks bekannt werden, dann werden sie hier veröffentlicht.
Kategorie: Forenoptimierung
Hits 4231 Kommentare 2
« Zurück     Startseite des Blogs     Nächste »
Kommentare 2

Kommentare

  1. Alter Kommentar

    zum Punkt Bestimmte Funktionen abschaten (Update 05.02.2009)

    Hallo, wo finde ich den eine Funktionsübersichtliste der Zusätzlichen
    Funktionen, wo ich genau ersehen kann wie die Bezeichnung der
    Funktion lautet, die ich abschalten könnte ?!?!?!
    permalink
    Veröffentlicht: 24.06.2009 um 11:04 von Stoffel1974 Stoffel1974 ist offline
  2. Alter Kommentar
    Benutzerbild von Arthur Spooner
    Hallo Stoffel,

    ob es eine Liste gibt, weiß ich nicht, zumindest habe ich, auf die Schnelle, eben keine gefunden.

    Generell lassen sich alle Optionen mit $vbulletin->options[optionsname] ausschalten.

    Du kannst aber in den Quellcode schauen und an der entsprechenden Stelle solltest du eine Zeile sehen, die ungefähr so aussieht:
    PHP-Code:
    <input type="radio" name="setting[showmoderatorcolumn]" id="rb_0_setting[showmoderatorcolumn]_323" value="0" tabindex="1" /> 
    Das was unter name="setting[ steht, also in den eckigen Klammern, das ist die Variable, die du brauchst und dort oben eintragen musst.

    Gruß
    permalink
    Veröffentlicht: 24.06.2009 um 15:23 von Arthur Spooner Arthur Spooner ist offline
 
Trackbacks 0

Trackbacks


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:51 Uhr.


Software
Software Updates
Top Downloads
Downloadarchiv
Downloads per RSS
Dauerbrenner
Apple iPod Touch im Test
Webradio: Die MP3-Goldgrube
Filesharing
Winamp
Beliebte Testberichte
Einkaufsberater MP3-Player
Cowon iaudio U5
iPod Testberichte
Apple iPhone
Beliebte Anleitungen
Alle Audioanleitungen
Beste MP3-Freeware
MP3 erstellen
WMA in MP3 umwandeln

Netzwelt bietet eine Vielzahl an MP3-Player Testberichten, MP3 Downloads und Nachrichten rund um den digitalen Musikmarkt. Besondere Highlights, wie iPhone, iPod und Filesharing werden besonders gefeatured. All diese und einige mehr gibt es im Wegweiser.

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite:
addon aktivieren vbulletin, aktuellste posts anzeigen vbulletin addon, alle vbulletin tipps, css server attacken abwehren, css server download beschleunigen, datenbankzugriff beschleunigen, datenbankzugriffe abwehren, foren optimieren, forum neue kommentare auf homepage anzeigen vbulletin, forum vbulletin moderator, google crawl beschleunigen, html abschalten vbulletin, https serverlast, image für jedes forum vbulletin, last vbulletin forum download, lastintensiv, optimieren vbulletin, php beschleunigen, php code beschleunigen, php unset($globals['phrase']);, problem vbulletin sendmessage.php, pumpe richtig ausbauen thermaltake, reputation benutzergruppen vbulletin, server vbulletin, serverlast php, serverlast reduzieren, serveroptimierung deaktivieren, sitemap.php vbulletin, tips suchanfrage optimieren, torrent server vbulletin, vbuletin beschleunigen, vbulletin, vbulletin 3.7.4 styles torrent, vbulletin addons, vbulletin addons bei style abschalten, vbulletin benutzergruppe registrierung, vbulletin beschleunigen, vbulletin bewertung ausschalten, vbulletin cache verzeichnis, vbulletin calendar addon, vbulletin deaktivieren registrierung, vbulletin download, vbulletin forum, vbulletin forum aktualisieren, vbulletin forum download, vbulletin forum zu langsam, vbulletin für google optimieren, vbulletin google einstellung, vbulletin gzip deaktivieren, vbulletin hooks, vbulletin ladezeit, vbulletin mit datenbank auf anderem server, vbulletin moderatoren anzeigen, vbulletin moderatoren startseite, vbulletin optimieren, vbulletin optimieren server, vbulletin optimierung, vbulletin registration user group, vbulletin registrierung, vbulletin reputation.php, vbulletin rss feed einstellungen, vbulletin serverlast, vbulletin spalte themen beiträge nicht anzeigen, vbulletin standard style deaktivieren, vbulletin suchmaschine optimieren, vbulletin tabellen optimieren, vbulletin themenanzeige global, vbulletin tricks, website optimierung tips und tricks, wie beschleunigen ausschalten einstellen,

RSS Feed abonnieren Nie mehr ein Update dieser Seite verpassen?
Hier klicken, um netzwelt.de zu abonnieren!


Hosted by O2

AGOF

*) Netzwelt.de registrierte zuletzt 1,3 Mio. Unique User pro Monat
(Quelle: internet facts 2008-IV der Arbeitsgemeinschaft Onlineforschung e.V.)
Netzwelt wird exklusiv von Platform-A vermarktet. Zur Buchungsanfrage >>

Platform-A