C and Redis
Find tutorials, examples and technical articles that will help you to develop with Redis and C.
Getting Started
In order to use Redis with C, you need a C Redis client. For your first steps with C and Redis, this article will show how to use the recommended library: hiredis.
- hiredis
Hiredis is a minimalistic C client library for the Redis database.It is minimalistic because it just adds minimal support for the protocol, but at the same time it uses a high level printf-alike API in order to make it much higher level than otherwise suggested by its minimal code base and the lack of explicit bindings for every Redis command.
Step 1. Install the pre-requisites
Version 1.0.0 marks the first stable release of Hiredis. Follow the below steps to install the pre-requisite packages in order to compile the latest version of hiredis.
brew install gcc make
Run the below command to run Redis server
redis-server
Step 2. Install and compile hiredis
wget https://github.com/redis/hiredis/archive/master.zip
make
make install
Step 3. Copy the below C code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <hiredis/hiredis.h>
int main (int argc, char **argv) {
redisReply *reply;
redisContext *c;
c = redisConnect("127.0.0.1", 6381);
if (c->err) {
printf("error: %s\n", c->errstr);
return 1;
}
/* PINGs */
reply = redisCommand(c,"PING %s", "Hello World");
printf("RESPONSE: %s\n", reply->str);
freeReplyObject(reply);
redisFree(c);
}
Step 4. Compile the code
gcc redistest.c -o redistest -I /usr/local/include/hiredis -lhiredis
Step 5. Test the code
./redistest
RESPONSE: Hello World
More C Clients Resources
hiredis-cluster - C client library for Redis Cluster
libredis - A C based general low-level PHP extension and client library for Redis, focusing on performance, generality and efficient parallel communication with multiple Redis servers.
hiredispool - Provides connection pooling and auto-reconnect for hiredis. It is also minimalistic and easy to do customization.