rellek[org]

Zurück   rellek[org] > general > project-news

project-news Hier findet ihr alle Neuigkeiten rund um die Projekte von rellek.

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (Permalink)  
Alt 07.05.2006, 14:33
Benutzerbild von rellek
ein bisschen nerd, ja?
 
Registriert seit: Apr 2002
Ort: 192.168.0.3
Beiträge: 11 161
Standard Optimierungen für die Statistik 1.1

Hi,

diese Infos könnten interessant sein, vor allem wenn die Statistik auf einem *etwas* größerem Board betrieben wird.

Es wird bei der überwiegenden Anzahl der Aufrufe einer Forenseite eine DB-Abfrage eingespart. Es geht konkret um die Ermittlung der aktiven Benutzer im Forum. Die Abfrage ist zwar jetzt nicht mehr ganz so genau, wie sie ursprünglich war, aber dafür viel besser für den Server. Sie wird nämlich nur noch ausgeführt, wenn sich an dem Wert auch wirklich etwas ändert.
Im Anhang ist auch noch eine aktualisierte statistics.php, diese hat glaub ich einen Bug gefixt und auch in sich noch eine kleinere Optimierung.

Anwendung auf eigene Gefahr! Die Änderungen werden auch in der Statistik 1.2 (oder wie auch immer die heißen wird) enthalten sein, aber Näheres kann dazu noch nicht gesagt werden.

Hier die Anleitung:
Code:
./global.php
suche:
list($result) = $db->query_first("SELECT COUNT(*) AS count FROM bb".$n."_users WHERE lastactivity >='$today';");

löschen

suche:
$db->query("UPDATE bb".$n."_statistics SET users=$result,hits=hits+1 WHERE date>=$today;");

ersetze durch:
$db->query("UPDATE bb".$n."_statistics SET hits=hits+1 WHERE date>=$today;");

./login.php
suche:
$db->unbuffered_query("DELETE FROM bb".$n."_sessions WHERE userid = '$result[userid]'", 1);

davor einfügen:
		$today = mktime(0,0,0, date("m", time()), date("d", time()), date("Y", time()));
		if($result['userid'] != 0 && $result['lastactivity'] < $today) $db->query("UPDATE bb".$n."_statistics SET users=users+1 WHERE date>=$today;");


./register.php
suche:
$db->query("UPDATE bb".$n."_sessions SET userid = '".$insertid."', styleid='".intval($r_styleid)."', langid='".intval($r_langid)."' WHERE sessionhash = '$sid'");

davor einfügen:
$today = mktime(0,0,0, date("m", time()), date("d", time()), date("Y", time()));
$db->query("UPDATE bb".$n."_statistics SET users=users+1 WHERE date>=$today;");


./acp/lib/session.php

suche:
$db->unbuffered_query("DELETE FROM bb".$n."_sessions WHERE userid = '$session[userid]'", 1);

davor einfügen:
			$today = mktime(0,0,0, date("m", time()), date("d", time()), date("Y", time()));
			if($wbbuserdata['userid'] != 0 && $wbbuserdata['lastactivity'] < $today) $db->query("UPDATE bb".$n."_statistics SET users=users+1 WHERE date>=$today;");
Und hier die statistics.php:
Angehängte Dateien
Dateityp: zip statistics.zip (4,4 KB, 16x aufgerufen)
__________________
...gehen Sie bitte weiter, hier gibt es nichts zu sehen | Horst | Murat | Achmed | Knut II.

Posted on a Mac.
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[2.3] Statistik 1.1 rellek hacks von rellek 82 03.07.2008 21:38
[info] Statistik HPE rellek project-news 0 13.05.2006 14:00
[2.3] Statistik rellek hacks von rellek 4 13.03.2006 23:38
Statistik dä Birne feedback 19 09.10.2003 07:52


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:14 Uhr.


Powered by vBulletin® Version 3.8.0 Beta 4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC7
Template-Modifikationen durch TMS