Thread $sth->finish(); zwingend erforderlich
(20 answers)
Opened by Torsten at 2009-10-13 18:25
hm, also wir hatten 700.000 hits im september. von daher ist die anzahl der queries schon sehr hoch.
memcached ist einfach zu installieren, und mit Cache::Memcached gibt es auch ein sehr einfach zu benutzendes modul dafür. überleg dir halt mal, was du dir jeweils für daten holst und ob du die wirklich bei jedem request aktuell brauchst. in der regel (aus meiner erfahrung) reicht ein caching von 1 minute schonmal aus, um die last auf die db signifikant zu senken. als beispiel: die liste der online-user links wird 1min gecached. die liste der heutigen posts wird momentan glaub ich 3min gecached (und expired, wenn ein neues post hinzukommt). die einzelnen messages werden gecached (bbcode-rendering und weitere selects werden dadurch gespart, wenn ein thread mehrmals hintereinander aufgerufen wird). ausserdem kann man z.b. die session cachen (kommt darauf an, ob du sessions nutzt, ich weiss ja nicht, was das fur eine seite ist). mod_perl kann man recht einfach mit ModPerl::Registry aktivieren, dafur empfiehlt es sich aber, wenn du den hauptteil deines skriptes in ein modul auslagerst und nur den aufruf im skript selbst hast, da ModPerl::Registry dein skript wiederum in ein modul mit einer subroutine verschachtelt. Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |