Membase vs memcached vs TokyoTyrant vs Redis
Membaseを入れてみたので、実際にどれくらいの速度が出るのか試してみました。
memcached vs TokyoCabinet vs TokyoTyrant vs Redis - blog.katsuma.tv
この記事のパクリですね。これにMembaseを加えてみた感じです。
クライアントによって速度が変わるのが嫌だったので、すべてPythonのmemcachedクライアントを使って、1万回setを行いその時間を計測してみました。
Membase | 1.18884205818 |
memcached | 0.683738946915 |
TokyoTyrant | 0.788640022278 |
Redis | 0.642278909683 |
思ったよりMembaseが遅い…。って言うかRedis速い。
まとめ
使おう!Redis!APIも豊富だし、レプリケーションとかも簡単らしいよ!
ちなみに今回計測に使ったコードはこちら
# -*- coding: utf-8 -*- import time import memcache def get_message(kbytes): return "1234567890" * 100 * kbytes if __name__ == '__main__': # initialize server = [ '11211', #Mmebase '11212', #memcache '1978', #Tokyo Tyrant + tch '6379', #Redis ] for s in server: print s mc = memcache.Client(['127.0.0.1:'+ s]) mc.flush_all() message_num = 10000 message_size = 1 message = get_message(message_size) # set start_time = time.time() for index in range(message_num): mc.set(str(index), message) end_time = time.time() # print progress time progress_time = end_time - start_time print 'set time: %s' % progress_time