xRedis 是一个C++开发的redis客户端,是对hiredis的C++封装
能与特点: 支持数据多节点分布存储,可自定义分片规则; 支持连接到官方集群,支持自动计算节点索引位置; 支持同时连接到每个分片的主从节点,支持主从读写分离; 支持对每个存储节点建立连接池; 支持同时连接多个数据分片集群;
C/C++ NoSQL数据库
共268Star
详细介绍
C++ Redis client, support the data slice storage, redis cluster, connection pool, read/write separation.
Features:
- data slice storage
- support Redis master slave connection, Support read/write separation
- suppert redis cluster
- connection pool
- simultaneously connected multiple data slice groups
- most Redis commands have been implemented
- multi thread safety
- suport linux and windows
中文版说明文档点这里
Dependencies
xredis requires hiredis only
Install
First step install libhiredis, on a Debian system you can use:
sudo apt-get install libhiredis-dev
on centos/redhat/fedora system you can use:
sudo yum install hiredis-devel
Then checkout the code and compile it
git clone https://github.com/0xsky/xredis
cd xredis
make
sudo make install
Usage
#Accessing redis or redis Cluster using the xRedisClusterClient class
#include "xRedisClusterClient.h"
int main(int argc, char **argv) {
xRedisClusterClient redisclient;
# Connect to REDIS and establish a connection pool
# If this node is a member of the REDIS cluster,
# a connection pool is automatically established for each primary node in the cluster.
bool bRet = redisclient.ConnectRedis("127.0.0.1", 6379, 4);
RedisResult result;
redisclient.RedisCommand(result, "set %s %s", "key", "hello");
printf("type:%d integer:%lld str:%s \r\n",
result.type(), result.integer(), result.str());
return 0;
}
Documentation
[xRedis API Site](http://xredis.0xsky.com/)
See [examples](https://github.com/0xsky/xredis/blob/master/examples) directory for some examples
blog: xSky's Blog