• libmemcached的安装及測试


    1、安装memcached

    ~$ wget http://memcached.googlecode.com/files/memcached-1.2.8.tar.gz.

     $ tar xvzf lmemcached-1.2.8.tar.gz
     $ cd lmemcached-1.2.8
     $ ./configure
     $ make
     $ sudo make install

    启动server(分配512兆内存。监听11211port):

    ./memcached -m 512 -p 11211 -vv

    2、下载安装libmemcached 

     $ wget http://launchpad.net/libmemcached/1.0/0.44/+download/libmemcached-0.44.tar.gz
     $ tar xvzf libmemcached-0.44tar.gz 
     $ cd libmemcached-0.44
     $ ./configure
     $ make
     $ sudo make install
     libmemcached 默认安装在/usr/local/,头文件安装在/usr/local/include/libmemcachde/,动态库默认安装在/usr/local/lib/下。


    3、libmemcached简单測试使用

    #include <iostream>
    #include <string>
    #include <libmemcached/memcached.h>
    
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        //connect server
        memcached_st *memc;
        memcached_return rc;
        memcached_server_st *server;
        time_t expiration = 0;
        uint32_t  flags = 0;
    
        memc = memcached_create(NULL);
        server = memcached_server_list_append(NULL, "localhost", 11211, &rc);
        rc = memcached_server_push(memc, server);
        memcached_server_list_free(server);
    
        string key = "key";
        string value = "value";
        size_t value_length = value.length();
        size_t key_length = key.length();
    
    
        //Save data
        rc = memcached_set(memc, key.c_str(), key.length(), value.c_str(), value.length(), expiration, flags);
        if (rc == MEMCACHED_SUCCESS)
        {
            cout << "Save data:" << value << " sucessful!" << endl;
        }
    
        //Get data
        char* result = memcached_get(memc, key.c_str(), key_length, &value_length, &flags, &rc);
        if (rc == MEMCACHED_SUCCESS)
        {
            cout << "Get value:" << result << " sucessful!" << endl;
        }
    
        //Delete data
        rc = memcached_delete(memc, key.c_str(), key_length, expiration);
        if (rc == MEMCACHED_SUCCESS)
        {
            cout << "Delete key:" << key << " sucessful!" << endl;
        }
    
        //free
        memcached_free(memc);
        return 0;
    }


  • 相关阅读:
    Unable to evaluate expression because the code is optimized or a native frame is on top of the call stack.
    .Net PostBack mechanism
    一些有用的正则表达式......收集中
    CI中利用hook实现用户权限访问
    PHP实现无限分类
    Unsatisfied forward or external declaration 错误分析
    Runtime error 217 at 00402840的错误原因
    Delphi Access Violation错误的分析
    植物大战僵尸全解密存档篇[转]学习内存读写的方法
    Delphi中模拟鼠标操作
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/7103310.html
Copyright © 2020-2023  润新知