memcachedb的C语言客户端libmemcached

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 (http://memcached.org/). It has been designed to be light on memory usage, thread safe, and provide full access to server side methods.(http://libmemcached.org/libMemcached.html

安装:官网下载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 下有测试列子,可以参考):

<span style="font-family:Microsoft YaHei;">#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<unistd.h>
#include<libmemcached/memcached.h>

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;
}</span>

关于libmemcached的api可以参考: http://docs.libmemcached.org/libmemcached.html


参考文章:http://blog.chinaunix.net/uid-52437-id-2108905.html




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值