Extrem lange Themen werden gesplittet

Thomas

Thomas Paatz
Forum-Team
MTB-News.de
Registriert
26. September 2000
Reaktionspunkte
3.018
Ort
Mandel / Bad Kreuznach
Hallo, im Vorschläge Forum gab es einen Hinweis zum teilweise langsamen Seitenaufbau bei extrem langen Themen.

Wir haben ein wenig geforscht:
Hintergrund: MySQL (das ist unsere Datenbankengine) kann nur schlecht mit LIMIT-Einschraenkungen bei grossen Ergebnislisten umgehen.

An ein paar grossen Themen hat Rikman die Zeit gemessen, die die Server benötigen um eine Seite zu generieren (jeweils letzte Seite aufgerufen):
Z.B. das Thema "Was hoert ihr gerade" (40k+ Antworten): bis zu 4,0 Sekunden

Zum Vergleich ein kurzes Thema mit ~10 Antworten: 0,3 Sekunden.

Wir werden daher alle Themen mit mehr als 5000 Antworten heute schliessen und in einem neuen Thema fortsetzen. Dazu wird ein neues Thema erstellt und im alten Thema verlinkt. Das neue Thema trägt den Titel des alten Themas ergänzt um "[Teil 2]"

Viele Grüße
Thomas
 
Keine Ahnung, wie Eure Tabellen/Queries aussehen, aber vielleicht hilft ja:
Code:
mysql> describe posts;
+-------+---------------+------+-----+---------+-------+
| Field | Type          | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+-------+
| p     | int(11)       | YES  |     | NULL    |       |
| d     | decimal(10,0) | YES  |     | NULL    |       |
| t     | int(11)       | YES  |     | NULL    |       |
+-------+---------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> select * from posts where t=111 limit 0,25;
...
25 rows in set (0.01 sec)

mysql> select * from posts where t=111 limit 10000,25;
...
25 rows in set (1.99 sec)

mysql> create index x on posts(t);
Query OK, 5000000 rows affected (21.82 sec)
Records: 5000000  Duplicates: 0  Warnings: 0

mysql> describe posts;
+-------+---------------+------+-----+---------+-------+
| Field | Type          | Null | Key | Default | Extra |
+-------+---------------+------+-----+---------+-------+
| p     | int(11)       | YES  |     | NULL    |       |
| d     | decimal(10,0) | YES  |     | NULL    |       |
| t     | int(11)       | YES  | MUL | NULL    |       |
+-------+---------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql> select * from posts where t=111 limit 0,25;
...
25 rows in set (0.00 sec)

mysql> select * from posts where t=111 limit 10000,25;
...
25 rows in set (0.06 sec)

(ps: ein "order by p" ändert die Zeiten nur unwesentlich.)
 
Wir haben durchaus einen Index auf der ThreadId. Sonst wuerde hier garnichts mehr gehen bei 4,5M Zeilen ;)

Die Applikation sucht sich die Posts auch nicht so einfach zusammen, wie du es illustriert hast - es muss ja ne Menge mehr passieren (z. B. "versteckte" (sprich "geloeschte") Posts auslassen etc.). Das kriegt man mit einem Index nicht mehr abgedeckt (zumindest nicht performant), so dass man den Query auf mehrere einzelne aufteilt und sich die Informationen stueckweise zusammensucht. Die Jungs bei Jelsoft haben das vBulletin schon ziemlich sauber geschrieben was die Datenbankschnittstelle und -abfragen angeht.
 
Hatte ja mal 5M angelegt und trotzdem 0.06 Sekunden.
(okay, bin allein auf meinem Rechner ;))
Versuch wars wert.

Klar, ich mag Leute, die mitdenken!

(ich habe auch eine Installation von MySQL fuer solche Spielereien (allerdings mit einer Kopie der Produktions-DB, die ist fuer die Forumsoftware ca. 4,5 GiB gross, inkl. Indexe)

Deine Tabelle passt vielleicht sogar komplett ins RAM, was Geschwindigkeitsmessungen evt. zusaetzlich verfaelschen koennte.
 
also mir es noch nit aufgefallen, dass große themen länger brauchen zum laden.
lediglich wenn da viele bilder sind dauert das evtl mal bißchen länger als sonst.
es wird doch immer nur die letzt seite geladen - oder?! wegen mir hätte man
die threads also nicht aufsplitten müssen - eigentlich find ich sogar eher
weniger gut.

aber wenn jemand noch mit isdn ins internet geht,
macht das ja vllt doch einen merkbaren unterscheid...
 
ich kann gut damit leben, wenn es mal ein paar sekunden länger dauert, bis ein langer thread sich aufbaut. lange threads sind gewissermaßen klassiker, da sich viele user über einen langen zeitraum hinweg rege daran beteiligt haben - also ein qualitätszeichen.
ich bin vielmehr der ansicht, daß ihr woanders entrümpeln solltet, z.b. gehören themen wie reise-, trekking,- faltrad, rennrad, cyclocross meiner ansicht nach nicht in ein mtb-forum. dafür gibt es anderswo platz. und falls nicht, schafft halt ein anderes forum. oder auch nicht.
die thematische schnittmenge der o.g. bereiche mit mtb-fahren ist in etwas so groß wie die gemeinsamkeiten von mtb und motocross, snowboard od skifahren - und dafür habt ihr ja hier auch keinen platz, zu recht, denn das gibt es auch anderswo.
weiterhin dümpeln einige lokale bikeforen hier seit geraumer zeit halbkomatös vor sich hin, die letzten beiträge liegen teilweise monate zurück. vorschlag: threads aus den tiefsten mottenkistentiefen, die seit laaanger zeit niemand mehr rausgewühlt hat, würde ich auch schließen.
und wenn ich damit noch immer keinen aufschrei der entrüstung ausgelöst haben sollte, schmeißt auch noch die 29er, trial u bmx raus!
 
typisch dubbel: in den untiefen des forums lungern, kurz auftauchen, einen einzeiler absondern und wieder im trüben verschwinden.

ich finde schon, wenn die macher hier änderungen andenken, daß auch die community gehört werden sollte. wenn schon das fotoalbum einen relaunch hatte, warum nicht mal grundsätzlich über die struktur des forums nachdenken?
 
aber das hat doch nichts mit dieser ankündigung zu tun (es wird ja auch nicht angedacht, sondern ist schon erledigt), sondern fällt unter Vorschläge, Feedback und Hilfe...

insofern hat fl1p also recht.
 
ich kann gut damit leben, wenn es mal ein paar sekunden länger dauert, bis ein langer thread sich aufbaut. lange threads sind gewissermaßen klassiker, da sich viele user über einen langen zeitraum hinweg rege daran beteiligt haben - also ein qualitätszeichen.
ich bin vielmehr der ansicht, daß ihr woanders entrümpeln solltet, z.b. gehören themen wie reise-, trekking,- faltrad, rennrad, cyclocross meiner ansicht nach nicht in ein mtb-forum. dafür gibt es anderswo platz. und falls nicht, schafft halt ein anderes forum. oder auch nicht.
die thematische schnittmenge der o.g. bereiche mit mtb-fahren ist in etwas so groß wie die gemeinsamkeiten von mtb und motocross, snowboard od skifahren - und dafür habt ihr ja hier auch keinen platz, zu recht, denn das gibt es auch anderswo.
weiterhin dümpeln einige lokale bikeforen hier seit geraumer zeit halbkomatös vor sich hin, die letzten beiträge liegen teilweise monate zurück. vorschlag: threads aus den tiefsten mottenkistentiefen, die seit laaanger zeit niemand mehr rausgewühlt hat, würde ich auch schließen.
und wenn ich damit noch immer keinen aufschrei der entrüstung ausgelöst haben sollte, schmeißt auch noch die 29er, trial u bmx raus!

Die komischen anderen Biker, die nicht viel mit dem wirklichen MTB was zu tun haben, einfach rausschmeissen, ist vielleicht nur eine gute Idee für dich, aber nicht für jedermann. Ich und auch bestimmt viele andere User hier fahren mindestens 2 verschiedene Radtypen und da ist es schon in ordnung, wenn man auf der gleichen Plattform bleiben kann um über sachen zu diskutieren...

Wenn du uralte Beträge schließt, erreichst du damit garnichts. Es geht ja auch nicht darum, dass nicht genügend Platz vorhanden wäre... Ansonsten geb ich Dubbel zu 100% Recht...

Just my 50cent
 
ich kann gut damit leben, wenn es mal ein paar sekunden länger dauert, bis ein langer thread sich aufbaut. lange threads sind gewissermaßen klassiker, da sich viele user über einen langen zeitraum hinweg rege daran beteiligt haben - also ein qualitätszeichen.
ich bin vielmehr der ansicht, daß ihr woanders entrümpeln solltet, z.b. gehören themen wie reise-, trekking,- faltrad, rennrad, cyclocross meiner ansicht nach nicht in ein mtb-forum. dafür gibt es anderswo platz. und falls nicht, schafft halt ein anderes forum. oder auch nicht.
die thematische schnittmenge der o.g. bereiche mit mtb-fahren ist in etwas so groß wie die gemeinsamkeiten von mtb und motocross, snowboard od skifahren - und dafür habt ihr ja hier auch keinen platz, zu recht, denn das gibt es auch anderswo.
weiterhin dümpeln einige lokale bikeforen hier seit geraumer zeit halbkomatös vor sich hin, die letzten beiträge liegen teilweise monate zurück. vorschlag: threads aus den tiefsten mottenkistentiefen, die seit laaanger zeit niemand mehr rausgewühlt hat, würde ich auch schließen.
und wenn ich damit noch immer keinen aufschrei der entrüstung ausgelöst haben sollte, schmeißt auch noch die 29er, trial u bmx raus!

wenn ich das richtig verstanden habe, geht es bei der ganzen sache weder darum speicherplatz zu sparen, noch dass sich die seite für dich ein bisschen schneller aufbaut, sondern darum rechenleistung der server zu sparen. was gleichbedeutend ist mit kosten, energie (klimaschutz :D ), etc zu sparen.
von den langen threads werden doch eh nur die vielleicht letzten 5 seiten wirklich gelesen. also wird das ganze wohl kein problem sein.
und gerade wenn ich ans ktwr denke bedeuten viele antworten noch längst kein hohes qualitätsniveau..
 
Bisschen spät ich weiß...aber mir fällt eben auf dass es fein gewesen wäre, wenn im ersten Posting der Fortsetzung auch ein Link zum alten Fred existieren würde.
Ist mir eben beim Rückwärtsblättern aufgefallen :D
Lässt sich da noch was machen?

Ralph

Ps: Es lebe die Demokratie :cool:
 
ich möchte nur sagen,

- das somit viele traditionelle threads und ihre damaligen poster (die mir immer gern in erinnerung bleiben) für immer sterben.

- das forum somit einen neuzeitlichen charckter bekommt, obwohl wir alt sind.

- wir geben unsere werte auf. im archiv zwar erreichbar, threads aber nur aktuell.

- ich habe die uralten threads immer geliebt, vorallem die damals vor dem grossen crash, damals hatte das forum für mich einen ganz bestimmten zauber - und die threads hatten bis heute weitergelebt, nun werden sie archiviert.

nur dass von meiner seite.

ich bin euch trotzdem sehr dankbar für alles !!
 
Bisschen spät ich weiß...aber mir fällt eben auf dass es fein gewesen wäre, wenn im ersten Posting der Fortsetzung auch ein Link zum alten Fred existieren würde.
Ist mir eben beim Rückwärtsblättern aufgefallen :D
Lässt sich da noch was machen?

Ralph

Ps: Es lebe die Demokratie :cool:

Hi,
ich habe diese Teilung manuell gemacht und wolte eigentlich überall diesen Link zurück einbauen. wenn er irgendwo fehlen sollte poste das hier bitte kurz, dann füge ich es noch ein,
Viele Grüße
Thomas
 
ich möchte nur sagen,

- das somit viele traditionelle threads und ihre damaligen poster (die mir immer gern in erinnerung bleiben) für immer sterben.

- das forum somit einen neuzeitlichen charckter bekommt, obwohl wir alt sind.

- wir geben unsere werte auf. im archiv zwar erreichbar, threads aber nur aktuell.
Tjaja. Je mehr wir unser gesellschaftliches Wirken und kulturelles Schaffen in die Virtualität verlegen, desto weniger wird davon bestehen bleiben. Möglicherweise wird man im Jahr 3000 mehr über das Jahr 1000 wissen als über das Jahr 2000. Unsere Zeit, ein aus historischer Perspektive vermutlich kurzes, aber ziemlich schwarzes Loch. Und Du hast darin gelebt. Wen das stört, der sollte sich vielleicht wieder mehr dem Steinmeißeln widmen. Damals hat Spammen noch richtig weh getan.
 
Zurück
Oben Unten