Logging
Timo Ewalds
timo at tzc.com
Sun Dec 5 17:57:37 PST 2004
I run a large site that is using memcached to a small degree at the
moment. Really it only caches things that are used on almost every page,
not things that are specific to a single page or to a single user. As
the database becomes the bottleneck instead of the webservers as it is
right now, I'll need to drop SELECTs and UPDATEs. Caching things that
are specific to individual pages will help drop the selects, but won't
drop the updates. I do alot of updates of the form UPDATE ... SET count
= count + 1 WHERE ... for stats and other logging, that could be
combined into single queries over time. The various hit counters, banner
view counters, etc, could all be done in the form of incr some memcached
entry, then once a minute zero them and do a single query of the form
UPDATE ... SET count = count + (sum of all from the memcached entry)
WHERE ..., greatly reducing the UPDATE query count. How hard would it be
to create a command similar to incr/decr that would just reset that key
to 0 and return the old value?
Does anyone have a better solution to this problem, memcached related or
not?
Timo
More information about the memcached
mailing list