Steve Chu wrote:
memcachedb is a better and simplified tugela, but more. It is designed
for persistent, not for cache. It enables bdb's transaction(so never
lost data) and no expiration concept exsited. For better performance,
we use a fixed length of key and value. The code is simple and
clear(about 1300+ lines), and also very internal, but already on our
production for high traffic pageview countering.

At the same time, we are testing memcachedb replication feature, and
may ready on next release.

Source code is available on: http://code.google.com/p/memcachedb/

I just downloaded it and quick-looked over the source.
If I have 1 client who rapidly get some key/values BDB which are in memory, and 1 client who get key/values which are not in memory => disk-access, the whole server would slow down for this disk-access because you have only the state-machine without using a worker-thread model for BDB-access. BDB blocks, at least for me :)

--Andy


Here comes the README file:

What is memcachedb?
*******************

Memcachedb is a distributed storage system designed for persistent. We simplely
hacked from memcached and tugela. But neither of them. Memcachedb is not a
cache solution, it is a persistent solution for high-frequency writing
and reading.
It conforms to memcache protocol(not completed, see below), so any
memcached client
can have connectivity with memcachedb. Memcachedb uses Berkeley DB as a storing
backend, so lots of features including transaction and replication are
supported.

memcachedb Features
*******************
High network performance, thanks to memcached and libevent(we using epoll).
High storage performance, Using Berkeley DB BTREE Access Method, and
bdb's own MPOOL.
High availability, Berkeley DB Transaction supported, and replication
will be ready later.

Supported memcache command
**************************
get, set, add, replace
incr, decr
delete
stats
db_checkpoint, db_archive (not in memcache protocol)

We Stand on the shoulders of giants, Memcachedb source code is based on:
* Memcached: http://www.danga.com/memcached/
* Tugela: http://meta.wikimedia.org/wiki/Tugela_Cache


Reply via email to