本文共 1613 字,大约阅读时间需要 5 分钟。
memcacheDB是基于memcached开发的,所以支持memcached协议的客户端都可以和其连接(MemcacheDB is compatible with memcache protocol, so any clients that support memcache protocol have connectivity with it)
libmemcached
简介:libMemcached is an open source C/C++ client library and tools for the memcached server (). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.()
安装:官网下载libmemcached的tar包,最新的1.0.18和1.0.17在编译的时候都会报错(原因不明)。1.0.16版本可以编译安装成功,默认的动态库和头文件安装在/usr/local/lib和/usr/local/include下,如果写完程序后执行时报错,找不到动态库(使用ldd命令可以发现,要引用的动态库不存在),可以将动态库复制到/usr/lib和/usr/lib64(64位操作系统),将头文件复制到/usr/include下。
C语言调用libmemcached函数连接memcacheDB的小程序(在下载客户端 libmemcached的tests 下有测试列子,可以参考):
#include #include #include #include #include int main(int argc,char *argv[]){ memcached_st *memc; memcached_return rc; memcached_server_st *server; time_t expiration; uint32_t flags; memc = memcached_create(NULL); server = memcached_server_list_append(NULL,(char*)"localhost",21201,&rc); rc = memcached_server_push(memc,server); memcached_server_list_free(server); const char *key = "123456"; const char *value = "asdfgh"; size_t keylen = strlen(key); size_t valuelen = strlen(value); rc = memcached_set(memc,key,keylen,value,valuelen,expiration,flags); if(MEMCACHED_SUCCESS == rc){ printf("Save data:%s successfully\n",value); } char *result = memcached_get(memc,key,keylen,&valuelen,&flags,&rc); if(MEMCACHED_SUCCESS == rc){ printf("Get value:%s successfully\n",result); } memcached_free(memc); return 0;}
关于libmemcached的api可以参考:
参考文章:
转载地址:http://vsspi.baihongyu.com/