Autor | Nachricht |
---|---|
Administrator ![]() ![]() Name: Marc Geschlecht: ![]() Anmeldedatum: 28.08.2004 Beiträge: 52423 Wohnort: Lohmar | zitieren Hallo! In eigentlich allen Scripten hat man das gleiche Problem. Jeder Seitenaufruf resultiert ein UPDATE in der Datenbank. D.h. der View-Counter der Seite wird bei jedem Aufruf um 1 hochgezählt. Um das zu verhindern, macht man sich die Wahrscheinlichkeitsrechnung zu nutze. Wir erstellen also die folgende Funktion:
Und dann machen wir die Datenbankabfrage abhängig vom Zufall und erhöhen den View-Counter um den entsprechenden Zufallswert:
Wie man sieht, habe ich die UPDATE-Abfrage auf LOW PRIORITY eingestellt. Insbesondere bei hohen Lasten ist mir aufgefallen, dass die UPDATE-Abfrage von Views mit anderen SELECTs kollidiert und wie ein Stoppschild in der Prozessliste verweilt und sich so mit anderen SELECTs "anlegt" bis es zum Absturz des MySQL-Dienstes kommen kann. Hier fand ich den Tipp: http://mysqldatabaseadministration.blogspot.com/2007/01/update-lowpriority.html Seit der Umstellung auf LOW PRIORITY kam es bei mir zu keinen Problemen mehr. Dann fragt Ihr Euch sicher, wie beim Einsatz von Zufallszahlen überhaupt die richtigen Views herauskommen sollen. Daher erkläre ich kurz die oben genannte Funktion update_rand(). Jede Zahl kommt in 25% aller Fälle zum Tragen. Das führt aber nur in bestimmten Fällen (je nach Zahl) zum Erfolg: Zahl 2 = 50% Zahl 3 = 33% Zahl 4 = 25% Zahl 5 = 20% D.h. von 100 Versuchen werden 25% auf die Zahl 2 zutreffen, aber nur in weiteren 50% der Fälle kommt es zum Einsatz der Zahl. D.h. die Zahl 2 wird in nur 12,5% aller Fälle zum Tragen kommen. Rechnet man wieder: Zahl 2 = 12,5% Zahl 3 = 8,25% Zahl 4 = 6,25% Zahl 5 = 5% Summe = 32% D.h. in gerade mal 32% aller Fälle kommt es zu einem UPDATE in der Datenbank (Ersparnis von 68% aller Abfragen!). Nun zur Genauigkeit dieser Wahrscheinlickeitsrechnung: 100 Aufrufe resultieren ohne diese Funktion 100 Views. In unserem Fall teilen sich diese 100 Aufrufe auf die jeweilige Zufallszahl wie folgt auf (gerundet): 13 Aufrufe * 2 = 26 Views 8 Aufrufe * 3 = 24 Views 6 Aufrufe * 4 = 24 Views 5 Aufrufe * 5 = 25 Views Macht in der Summe 99 Views. D.h. die Ergebnisse weichen nur minimal vom Original ab und wer interessiert sich schon wirklich dafür, ob ein Thema 100 mal oder 99 mal aufgerufen wurde. Diese Technik bietet sich übrigens auch bei Counter-Diensten an, wenn man Impressionen zählt. Da würde ich die Formel sogar noch weiter ausbauen, dass sie noch seltener zutrifft. |
▲ | pn email |
Gast | zitieren Mach mit!Wenn Dir die Beiträge zum Thread "UPDATE View-Counter per Zufall (Performance Tipp)" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:Registrierte Mitglieder genießen die folgenden Vorteile: ✔ kostenlose Mitgliedschaft ✔ keine Werbung ✔ direkter Austausch mit Gleichgesinnten ✔ neue Fragen stellen oder Diskussionen starten ✔ schnelle Hilfe bei Problemen ✔ Bilder und Videos hochladen ✔ und vieles mehr... |
▲ | |
Ähnliche Beiträge | Re: √ | Letzter Beitrag | |
---|---|---|---|
Counter Strike? Hi Leutz, mal ne Frage zu Cs., komme da nicht weiter in einer Szene, weiß jemand nen Cheat wo ich mich mal schnell unsterblich machen... von Percy | 4 1.063 | 17.10.2004, 22:05 Percy | |
MKL nach E10, Zufall? Nabend allerseits,
hatte gestern eine Strecke von ca. 500Km vor mir und dachte, da ich sowieso Autobahn fahre (160-180Km/h), tanke ich doch gleich E10.
Gesagt, getan. Tank ist mit E10 voll.
Nun, nach etwa 200Km ging dann die MKL an.
Ist es ein kommischer... von DriV3r | 11 917 | 30.08.2012, 21:09 DriV3r | |
Frage zu Rear View und PDC Hallo Leute
Wie ihr sicher gelesen habt, muss mein CN2 bald zu Honda um diesen Blöden schaden reparieren zu lassen.
heute hat mein Honda meister mir ein angebot gemacht
Rear View inkl einbau : 680€
PDC inkl Einbau: 440€
Was würdet... von thomasee8 | 15 1.022 | 09.10.2006, 06:44 Daccord | |
Performance Update MB2 D14A8 Guten Abend !
Ich bin schon seit einiger Zeit interessierter "stiller Mitleser" und hätte nun gern ein paar Ratschläge zu meinem Vorhaben.
Wie im Titel ersichtlich, fahre ich einen MB2 mit dem schnuckeligen D14A8. Dass ich da keine 150 PS... von CI90 | 0 297 | 19.11.2010, 17:51 CI90 | |
Der Threadfluch !!! oder nur Zufall ??? Hey Leute, mir ist aufgefallen dass viele, die ihr Auto in nem eigenem Thread vorstellen, dann komischerweise nen Unfall damit haben, geht euch das auch so? ... von RH.onda | 30 1.477 | 11.08.2011, 18:12 Woll-E | |
Counter Strike etc. schadet der Jugend erst den:
http://www.ice-only.de/Counter_Strike_Stress.151.0.html
und dann den, der ist noch... von mgutt | 34 3.899 | 07.11.2005, 19:57 mgutt | |
Alt aber gut! Counter Strike (Witzig) alt, aber immer noch Lustig :D
... an denen man erkennt, das man zuviel Counter-Strike zockt:
1. Man verläßt die Wohnung nur durch den Lüftungsschacht.
2. Man betritt seine Wohnung nicht bevor man eine Flashbang durch die Tür geschmissen... von Fuchs | 9 1.438 | 21.02.2006, 14:11 djhemp | |
Counter-Strike Source - startet nicht?! // S.2 Hallo,
ich habe mir überlegt, dass ich vlt. mal wieder Abends kurz ne Runde CS spielen könnte.
Das letzte mal, als ich CS gespielt habe, war es Version 1.4 oder so.
Also schon "etwas länger" her..
Was benötige ich denn nun eigentlich,... von s-lab | 18 1.173 | 07.01.2009, 19:08 el bosso | |
grad durch zufall gefunden.... den staubsauger kann ich euch natürlich nicht vorenthalten :laugh:
http://www.willhaben.at/iad/viewimage?adId=22425562#8
weiss ja nicht ob die front in der prelude-gemeinde bekannt/beliebt ist aber ich musst erstmal lachen als ich das gesehen hab ... von white*angel | 18 756 | 03.01.2011, 20:51 Waqzer | |
Mein Neues Rear View im Accord 2006 Hab gestern meinen accord wieder bekommen. Bin sehr zufrieden. Lediglich die kamera muss neu justiert werden, ich sehe auf den display eine schwarze ecke, das ist die ecke von der nummernschildaussparung.
In dem anderen Thread werde ich die pin... von thomasee8 | 7 832 | 04.11.2006, 11:33 thomasee8 |