Company
Date Published
Author
Trond Norbye, Senior Developer, Couchbase
Word count
666
Language
English
Hacker News points
None

Summary

Membase is designed to be "on the wire" compatible with any memcached server, allowing access through any "memcapable" client by connecting to the standard memcached port, with the membase proxy moxi handling SASL authentication and request routing to the appropriate server. Unlike Memcached, Membase stores each item in a vbucket mapped to a server, facilitating vbucket relocation when the cluster size changes. Accessing Membase through moxi incurs additional overhead compared to direct node communication, prompting the development of "smart clients." The author, a Memcached developer, created a prototype library to facilitate testing, emphasizing its callback-based design integrated with libevent for easy application use. The library, although not production-ready, supports basic operations like get, add, replace, and set but lacks features like error handling, timeouts, and vbucket list management. The author invites collaboration to enhance the library's functionality and provides an example of creating a TAP stream to monitor cluster modifications.