about memcached

Hi all,

  There is a new plugin for memcached query cache, I was hoping it will
bring some performance boost for my application, so I write a simple
ruby program to benchmark normal memcached performance, the result is
very frustrating:

[code]
require 'memcache'

CACHE = MemCache.new('localhost:11211')

def mem_write
  File.open("./dbmrec.txt", "r") do |f|
    while line = f.gets
      str, num = line.split(' ')
      CACHE[str] = num
    end
  end
end
[/code]

dbmrec.txt contains 31196 lines of record like:

lwatch 38535
netwox-doc 70502
octave-audio 92312
octave-informationtheory 92004
pyrenamer 5049
ruby1.9-examples 13590
safecat 74989

  It needs around 25s to successfully terminate compare to 0.5s forthe
same program using tokyocabinet.

  So, my question is, am I missing something? This will be even slower
than normal sql insert/select I guess.

  Thanks for any comment.

Difei

There is a new plugin for memcached query cache, I was hoping it will
bring some performance boost for my application, so I write a simple
ruby program to benchmark normal memcached performance, the result is
very frustrating:

...

while line = f\.gets
  str, num = line\.split\(' '\)
  CACHE\[str\] = num
end

...

So, my question is, am I missing something? This will be even slower
than normal sql insert/select I guess.

I don't think repeated writes with no reads is a very good performance
test for memcached. Test reading instead. I'd test by populating the
cache to something that would look like steady state (i.e. you don't
want all your data in cache, because that's unrealistic, but you don't
want to start empty), then starting the clock and doing lots of reads,
some of which will be cache misses and have to go to DB.

Kevin

Kevin Peterson wrote: