RedisConnect

C++11 的 Redis 连接库
授权协议 GPL
开发语言 C/C++
所属分类 数据库相关、 数据库驱动程序
软件类型 开源软件
地区 国产
投 递 者 仲孙子辰
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

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

 

  • 我们通过第三方库hiredis来连接redis。 hiredis.h 的下载地址为: https://github.com/redis/hiredis 1、下载安装hiredis库: $ wget https://github.com/redis/hiredis/archive/master.zip $ mv hiredis-master /usr/loca $ cd /usr/local #解

  • 01 auth Redis默认是没有连接密码的,即requirepass参数默认是没有值的哈,当然它是可以在线进行设置的哈,如果在线设置时要考虑业务,同时在配置文件中加上该参数。如果redis设置了密码(以在线查看requirepass参数的结果为准,结果就是密码),那么在连接时就需要认证 ## 连接时没有进行密码的认证,当连接至redis后,若有密码,则无法操作,会有提示,此时就需要用“auth

  • 我的是安装在Linux  ubuntu18.04虚拟机上面 一、防火墙开放 redis的端口6379,并重新加载防火墙 firewall-cmd --zone=public --add-port=3306/tcp --permanent    //开放端口 firewall-cmd --reload   //重新加载 firewall-cmd --zone=public --list-ports 

  • 今天碰到这个问题了,挺搞笑的,解决方式是: 1.正确配置 spring: redis: #数据库索引 database: 0 host: 127.0.0.1 port: 6379 password: jedis: pool: #最大连接数 max-active: 8 #最大阻塞等待时间(负数表示没限制) max-wait: -1 #最大空闲 max-idle: 8 #最小空闲 min-idle:

  • 先上结论:直接使用 StrictRedis() 即可。 三者关系: StrictRedis = Redis > ConnectPool(包含) 原因如下: 官方考虑向后兼容性,推荐使用StrictRedis()。两者没有任何差别,redis.client.py 源码中可以直接看出StrictRedis就是Redis StrictRedis = Redis ConnectPool是redis的连接

  • 1.下载hiredis并且安装到库 git clone https://github.com/redis/hiredis tar xzvf hiredis.tar.gz make make install 2.网上抄一个测试代码,参考至(1条消息) c++操作redis数据库(详解)_@seven@的博客-CSDN博客_c++ redis redis.h #ifndef _REDIS_H_ #d

  • 在网上试了好多,更改redis.windows.conf文件的方法没有效果, 最后发现在打开redis-server.exe出现闪退,然后寻找解决原因,发现是之前设置了密码,然后没有输密码,直接启动,导致出错。 解决:在redis.windows.conf文件中,将 # requirepass foobared 解注,并重新设置密码 requirepass 123456 然后在Windows黑

  • #include "teb_local_planner/utils/redis_util.hpp" Redis::Redis() {} Redis::~Redis() { _connect = nullptr; _reply = nullptr; } bool Redis::connect(const string &host, int port) { _connec

  • 今天在项目中连接远程redis时,抛出连接超时异常:connect timed out。 详细信息例如以下: org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnect

  • 环境 Ubuntu 16.04 1、redis.conf配置文件中 注释 bind 127.0.0.1 2、防火墙关闭(或添加可访问的端口,具体不在此描述) 最后一个坑 虚拟机网络配置 使用网络地址转换的方式时,需要配置端口转发规则,添加redis服务6379端口 在windows系统中打开cmd 输入telnet 192.168.56.1 6379 (telnet ip port)测试是否可以正

 相关资料
  • 主要内容:Redis 连接,1.Auth 命令,2.Echo 命令,3.Ping 命令,4.Quit 命令,5.Select 命令Redis 连接 Redis 连接命令主要是用于连接 redis 服务。 1.Auth 命令 Redis Auth 命令用于检测给定的密码和配置文件中的密码是否相符。 密码匹配时返回 OK ,否则返回一个错误。 2.Echo 命令 Redis Echo 命令用于打印给定的字符串。 3.Ping 命令 Redis Ping 命令使用客户端向 Redis 服务器发送一个

  • 问题内容: Node.js异步I / O是否需要Redis连接池? 我看到的大多数Redis库都允许您创建客户端连接,但是连接池模块并不多,因此我认为它并不那么重要。 令我困惑的一件事是,Redis在一个Redis实例中默认具有16个不同/分段的数据库。 因此,如果创建一个连接池,则连接到16个数据库中的哪个数据库?您可以使用同一连接池一次连接所有16个吗? 是否存在一个Node.js Redis

  • 问题内容: 在Redis上使用node_redis Node.js模块时,我应该只使用一个连接,因为Redis是单线程进程,还是应该创建一个连接池来提高性能? 问题答案: 只需使用一个连接。这两个节点和Redis的是 有效的 单个线程。我认为拥有多个连接不会给您带来任何好处。在开始使用Redis进行开发之前,我问过类似的问题,似乎一个客户端/一个应用程序是非常有效的模式。

  • 主要内容:Redis连接命令,连接命令应用Redis 连接命令是主要用于验证 Redis 服务器的连接状态,比如验证客户端与 Redis 服务器是否连接成功,以及检查服务器运行状态,以及是否断开当前连接等。 我们知道,只有当客户端与服务器正常连接后才能够实现彼此的交互、通信。Redis 通过“Redis序列化协议”(简称“RESP”),实现客户端与服务端之间的连接通信,该协议主要包括两个部分:网络模型和序列化协议。 网络模型主要负责数据交

  • 当我运行spring boot应用程序时,我得到以下错误: 应用程序启动失败 描述:

  • 本文向大家介绍Java连接Vmware中的redis,包括了Java连接Vmware中的redis的使用技巧和注意事项,需要的朋友参考一下 本文使用的vmware 11,安装的系统是centos6.7,redis版本是3..0.2 。如何安装请参考上一篇文章《Linux下安装Redis并设置相关服务》。          安装完redis以后,我们是不是要迫不及待的想使用一下呢。那么我们要在程序中

  • Redis协程连接池 demo中有封装好的redis连接池,RedisPool.php,复制demo中的RedisPool.php并放入App/Utility中即可使用 添加数据库配置 在Config中添加配置信息: 'REDIS' => [ 'host' => '127.0.0.1', // redis主机地址 'port' => 6379, // 端口 'seriali

  • 本文向大家介绍Python与Redis的连接教程,包括了Python与Redis的连接教程的使用技巧和注意事项,需要的朋友参考一下 今天在写zabbix storm job监控脚本的时候用到了python的redis模块,之前也有用过,但是没有过多的了解,今天看了下相关的api和源码,看到有ConnectionPool的实现,这里简单说下。 在ConnectionPool之前,如果需要连接redi