memcache performance
Eric Hodel
drbrain at segment7.net
Tue Jan 24 20:52:49 UTC 2006
On Jan 24, 2006, at 12:37 PM, Pavel Kolla wrote:
> Hello, i have relatively busy site at my hands with a lot
> of DB
> activity, so i decided to offload some session specific realtime
> data
> to memcached...
>
> the setup is
> lighttpd + spawn-fcgi + fastcgi + php4-cgi (eAccelerator & PECL/
> memcache)
$ diff -u mysql memcache
--- memcache 2006-01-24 12:46:26.000000000 -0800
+++ mysql 2006-01-24 12:46:04.000000000 -0800
@@ -1,8 +1,9 @@
PHP gets encrypted request.
PHP figures out user token from the request.
-PHP through permanent fcgi's connection to MySQL4 DB runs query to
get encryption key from DB using given token.
+PHP through permanent fcgi's connection to memcached gets encryption
key using token as search key.
PHP decrypts request
-PHP premutates encryption key and runs query to update DB with it
for given user token
+PHP premutates encryption key and sets memcached with it for given
user token used as key.
PHP validates requests.
PHP executes request (few queries and some php work).
PHP encrypts response and send it back to client.
> memcache daemon used is 1.1.12-r2 (latest stable available from
> gentoo
> as net-misc/memcached)
>
> PECL version is 2.0.0 (latest stable available from
> gentoo
> dev-php4/pecl-memcache)
>
> basically, I use memcache to take care of frequently
> accessed and
> modified authentication data. As I loadtested with siege for 5
> minutes
> with 200 concurrent emulated users doing random different
> requests -
> there is practically no difference in overall performance. I see
> about
> 20-25% drop in DB activity with memcache but that doesn't affect
> number
> of handled requests per second. During the test load times on web
> server
> (dual Xeon 2.8 HT) are ~8-9 in both cases, and DB (quad Xeon MP
> 1.5)
> load is ~2 in both cases.
>
> I figure i must be doing something wrong but can't really see
> what
> exactly, so i'm looking for suggestions here...
How did you determine that memcached would really speed up your
processing?
Was the DB really your choke point? How long did the DB queries take?
How long do the tokens stay in memcached?
--
Eric Hodel - drbrain at segment7.net - http://segment7.net
This implementation is HODEL-HASH-9600 compliant
http://trackmap.robotcoop.com
More information about the memcached
mailing list