Hallo zusammen,
unser Forum läuft auf einem V-Server eigentlich "wie geschmiert". Allerdings frage ich mich gerade wieder, ob es hinsichtlich bestimmter Aufgaben entsprechende Optimierungsmöglichkeiten gäbe.
Z.B. wegen der Teilung eines Threads mit ca. 3500 Beiträgen musste ich in der php.ini vorübergehend die "max_execution_time" hochsetzen, damit die Aktion überhaupt durchgeführt werden kann. Die Frage ist, welche Konfigurationseinstellungen (MySQL, PHP [noch 5.2], Apache [prefork]) in Frage kommen könnten, solche Aufgaben schneller durchführen zu können. Wie sind denn da Eure Erfahrungen? Oder stellen solche Aufgaben einen (V)-Server immer vor ein gewisses Problem?
Wie schnell ist dein Seitenaufbau? (Kann man gut mit Firebug testen)
Ich habe aktuell ~200-250ms für Portal/Threadansicht/etc...
Gerade getestet, wenn ich bei nem Thread mit ~1900 Posts auf "Teilen" gehe, dauert das 12 sek. um alle Posts zu laden. (Gesamte Zeit 15sek, davon 12sek die MyBB braucht).
Wenn es dein eigener VServer ist und dort nur dein Zeug darauf läuft, kannst du die max execution time ruhig hochsetzen. Die Serverlast erhöht sich dadurch ja nicht, solange du kein Programm hast das in einer Endlosschleife stecken bleibt - und du hast eher Chancen daß z.B. der Backup-Task durchläuft ohne mittendrin abgebrochen zu werden.
Andererseits sollte Thread teilen nicht lange brauchen. Das ist ein INSERT (für den neuen Thread) und ein UPDATE (für die Posts die dann dem neuen Thread zugeordnet werden), dann vielleicht noch ein Update für den alten Thread und fürs Forum (um Counter zu aktualisieren). Aber wer weiß, wie MyBB das intern tatsächlich macht, vielleicht wird da jedes Posting einzeln verschoben oder sowas, dann hast du 3500 updates statt 1 und das dauert dann halt etwas länger...
@thebod:
hmm, das sieht bei mir schon ein wenig anders aus. Ein Thema mit ca. 2600 Beiträgen braucht 2-3 Sekunden, bis es komplett angezeigt wird.
Code:
Generated in 2.9433482 seconds (29.86% PHP / 70.14% MySQL)
SQL Queries: 75 / Global Parsing Time: 1.0211191 / Memory Usage: 5,25 MB
Server Load: 0.23 / GZip Compression: Enabled
ist nicht gerade der Brüller....
@frostschutz: die max_execution_time habe ich jetzt mal generell hochgesetzt. Mit den Backups habe ich aber kein Problem, da ich das direkt über einen mysqldump cronjob mache.
lass dir da mal genau die queries anzeigen, welche da so lange brauchen...
wahrscheinlich spielt da ein plugin mit, 75 queries sind mehr als normal
Die einzelnen queries werden jeweils in einer Zeit deutlich unter 0.001ms ausgeführt. Als Plugin läuft der Threadviewer mit 2 Abfragen mit und diese dauern jeweils ca. 0.02ms...
Auch ist die Beitragsanzahl eigentlich egal, es wird ja immer die gleiche Anzahl angezeigt.
mir fällt es eben immer bei Themen auf, die eine hohe Anzahl an Beiträgen haben....
Nicht wenn man alle gleichzeitig anzeigt
Jockl: was hat du an Optimierungen? Wie siehts aus mit MySQL Caching? PHP Caching?
So siehts bei mir aus:
Generated in 0.1718471 seconds (65.68% PHP / 34.32% MySQL)
SQL Queries: 44 / Global Parsing Time: 0.0295391 / Memory Usage: 2,25 MB
PHP version: 5.2.4-2ubuntu5.14 / Server Load: 0.01 / GZip Compression: Enabled
Was meinst Du mit MySQL-Caching genau? Für PHP läuft der eaccelerator mit.