C++11 的 Redis 连接库 RedisConnect

GPL
C/C++
跨平台
2019-05-28
寻根

RedisConnect介绍

1、RedisConnect是基于C++11实现的简单易用的Redis客户端。

2、源码只包含一个头文件与一个命令行工具源文件,无需编译安装,真正做到零依赖。

3、自带连接池功能,调用Setup方法初始化连接池,然后执行Instance方法就可以获取一个连接。

4、RedisConnect包装了常用的redis命令,对于未包装的命令你可以使用可变参模板方法(execute)进行调用。

安装方法

1、下载源码

git clone https://gitee.com/xungen/redisconnect.git

2、直接在工程中包含RedisConnect.h头文件即可(示例代码如下)

#include "RedisConnect.h"

int main(int argc, char** argv)
{
    string val;

    //初始化连接池
    RedisConnect::Setup("127.0.0.1", 6379, "password");

    //从连接池中获取一个连接
    shared_ptr<RedisConnect> redis = RedisConnect::Instance();

    //设置一个键值
    redis->set("key", "val");

    //获取键值内容
    redis->get("key", val);

    //执行expire命令设置超时时间
    redis->execute("expire", "key", 60);

    //获取超时时间(与ttl(key)方法等价)
    redis->execute("ttl", "key");

    //调用getStatus方法获取ttl命令执行结果
    printf("超时时间:%d\n", redis->getStatus());

    //执行del命令删除键值
    redis->execute("del", "key");

    return 0;
}

3、RedisConnect自带一个命令行客户端工具

直接在源码目录执行make命令就可完成客户端工具的编译,工具名称为redis,使用工具前你需要设置以下环境变量,然后将redis程序复制到系统/usr/bin目录下

# redis服务地址与端口
export REDIS_HOST=127.0.0.1:6379

# redis连接的认证密码(为空说明无需认证)
export REDIS_PASSWORD=password

设置好上面的环境变量你可以使用redis客户端,使用方法如下

# 设置一个键值
redis set key val

# 获取指定键值
redis get key

# 设置有效时间
redis expire key 60

# 获取有效时间
redis ttl key

 

的码云指数为
超过 的项目
加载中
请先登录后再评论。

暂无资讯

暂无问答

socket connection error in rredis

I have had similar issues although with registerDoRedis() as you cannot set a timeout and I believe the problem is with the timeout value used in the function 'redisConnect'. In...

2013/04/24 17:29
124
0
推荐一款好用的redis客户端工具

推荐一款好用的redis客户端工具 redis官方客户端(redis-cli)每次都要指定连接IP与端口,连接成功后还要执行auth命令进行口令认证,这个过程比较繁琐,auth命令需要人工干预,不方便自动化执...

2019/06/02 18:51
113
0
R语言与Redis的联合使用

R语言通过Redis存储进行数据分析,可谓简单高效,非常方便,易于学习。

2015/07/02 11:15
1.3K
1
C语言可变参数

  前段时候在实现利用redis进行的一个数据库比对的功能,稍微去分析了一下redis里面的源代码,然后发现其中的发送命令接口声明如下: void *redisCommand(redisConnect *c,const char * Fo...

2018/08/28 20:00
3
0
C++问题--Reis连接redisContext *pRedisContext = redisConnectWithTimeout("127.0.0.1", 6379, t...

一、问题 使用C++连接Redis的时候出错,错误String为磁盘空间不足,连接代码如下: //reids默认监听端口6387 int iTimeout = 10000; struct timeval tv; tv.tv_sec = iTimeo...

2019/11/14 13:38
61
0
走近源码:Redis命令执行过程(客户端)

前面我们了解过了当Redis执行一个命令时,服务端做了哪些事情,不了解的同学可以看一下这篇文章走近源码:Redis如何执行命令。今天就一起来看看Redis的命令执行过程中客户端都做了什么事情。...

2019/01/21 09:00
0
0
mysql,redis 使用c语言客户端

g++ hello.cpp -I /opt/mariadb/include/mysql -o hello -lmariadb -L/opt/mariadb/lib/ patchelf --set-rpath /opt/mariadb/lib/ hello #include <stdio.h> #include <mysql.h> int main(in...

2019/05/06 14:05
3
0
redis客户端连接到服务器的步骤

和大多数客户端连接到服务器一样,redis-cli连接到服务器也主要分为两个阶段,请求连接阶段和数据传送阶段。具体来讲redis-cli做的事情有: 1、以socket方式建立连接; 2,选择相应的数据库;...

2019/06/02 01:47
17
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部