yangsmithcool / xredis

Redis C++ client, support the data slice storage, support redis cluster, thread-safe,multi-platform,connection pool, read/write separation.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

xRedis
Build Status License GitHub version

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

[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

xRedis QQ Group: 190107312 捐赠作者

About

Redis C++ client, support the data slice storage, support redis cluster, thread-safe,multi-platform,connection pool, read/write separation.

License:GNU General Public License v3.0


Languages

Language:C++ 90.9%Language:C 6.0%Language:Makefile 3.1%