1 up | 2 up | 3 up | 4 up | 5 up | 6 up | 7 up |
^^^ Additional posts ^^^
zorg.ch
#35754 by @ 22.06.2004 19:25 - nach oben -
Am besten so wies jetzt ist, aber nur der letzte Monat.
zorg.ch
#35757 by @ 22.06.2004 19:32 - nach oben -
also ich würds db-mässig allgemein auf unread-posts (nicht wie jetzt read-posts) umstellen und dann einfach alle posts, die ein user seit einem monat nicht gelesen hat auch aus der unread-posts table nehmen. weil der kommt 1. sowieso selten oder gar nicht mehr auf die page und wird 2. ganz sicher nicht zig hundert posts lesen, weil die noch markiert sind.
zorg.ch
#35775 by @ 22.06.2004 19:56 - nach oben -
Bin gegen ein "unread_posts"-log, weil dann bei jedem neuen post > 200? INSERTS gemacht werden müssen.
zorg.ch
#35777 by @ 22.06.2004 19:58 - nach oben -
na und? kannst das ja in einem query machen. ausserdem werden posts öfter gelesen als geschrieben. du hast dann also weniger querys.
zorg.ch
#35784 by @ 22.06.2004 20:03 - nach oben -
Okay... einfach dass wir 300 users haben und es immer mehr werden...
zorg.ch
#35787 by @ 22.06.2004 20:10 - nach oben -
wir können das ja so einrichten, dass der eintrag nur für user gemacht wird, die den lastlogin in den letzten 3 monaten hatten. dann sinds nämlich keine 80 users mehr.
zorg.ch
#35802 by @ 22.06.2004 22:46 - nach oben -
Oder der User muss ein Flag setzen, ob er das Forum überhaupt verfolgen will. Wenn er 3 Mnt inaktiv ist, wir im das Flag automatisch entzogen.
zorg.ch
#35837 by @ 23.06.2004 09:03 - nach oben -
Jetzt wirds langsam ein bisschen kompliziert nicht?
zorg.ch
#35861 by @ 23.06.2004 11:44 - nach oben -
es geht...
zorg.ch
#35865 by @ 23.06.2004 12:18 - nach oben -
Also ich find das nicht soo kompliziert.
Wenn ein User das Flag gesetzt hat und das Lastlogin-Date > 3 Mnt, dann werden die Unread Posts geloggt (egal mit welcher Variante).
Damit können wir die Tabelle klein halten.
zorg.ch
#35871 by @ 23.06.2004 12:40 - nach oben -
Und man muss pro User ein Query (ich bin mir da jetzt nicht ganz sicher) machen, ob flag gesetzt ist, und lastlogin > 3M ist?
zorg.ch
#35874 by @ 23.06.2004 12:44 - nach oben -
Ja dazu brauchts nur eine Query.
Allerdings ist das ein Query mehr, was sich sicher auch nicht sonderlich Positiv auf die System Performance auswirkt, weil sie bei jedem Seitenaufruf gmacht werden muss.
Die Anzeige könnte man eigentlich auch auf eine Andere Seite auslagern, dann müssten die Posts nicht bei jedem Seitenaufruf gezählt werden. Wieder ein Performancegewinn.
zorg.ch
#35888 by @ 23.06.2004 13:52 - nach oben -
Im Moment ists nur ein JOIN, ich wäre froh wenn wirs weiterhin ohne zus. Query lösen könnten.
zorg.ch
#35906 by @ 23.06.2004 14:10 - nach oben -
ja, dann hat man ein query mehr.
aber bringt nicht die einsparung von daten einen erheblichen performancegewinn?
zorg.ch
#35938 by @ 23.06.2004 15:07 - nach oben -
gibts keine möglichkeit, das als bedingung oder so beim insert-statement anzuhängen?
Additional posts
zorg.ch
#35795 by @ 22.06.2004 21:29 - nach oben -
datt ist klar. aber bikos vorschlag dazu ist nicht schlecht, und es macht auch weniger arbeit als pro post 30000 posts durchzuackern (und auf irgendeine art und weise macht das die db). wuerde ich auf jeden fall behaupten.
zorg.ch
#35799 by @ 22.06.2004 21:49 - nach oben -
Wenns indexed ist, ists nicht sooo wild. Mit 'EXPLAIN' kann man das ja schoen angucken.