linux下的hiredis的安装和使用(一)
linux-dash
A beautiful web dashboard for Linux
项目地址:https://gitcode.com/gh_mirrors/li/linux-dash
免费下载资源
·
1、linux下如何安装hiredis
1)下载地址
https://github.com/redis/hiredis
2)编译和安装
解压后的文件夹执行 make;make install;
3)头文件包含
include <hiredis/hiredis.h>
4)编译选项
makefile文件中加入 LDFLAGS = -lhiredis
2、主要结构
主要关注2个结构体,
1)redisContext
主要有4个接口,
1)redisContext* redisConnect(const char *ip, int port)
//连接redis。
2)void *redisCommand(redisContext *c, const char *format, ...);
//执行redis操作命令
3)void freeReplyObject(void *reply);
//释放执行redis操作命令回复的内存
4)void redisFree(redisContext *c);
主要4种异常情况会出现,
1)获得的redisContext指针为null
异常处理办法:再次尝试与redis建立新的连接上下文。
2)获得的redisContext指针err不为0
异常处理办法:再次尝试与redis建立新的连接上下文。
3)获得的redisReply指针为null
异常处理办法:断开redis连接再次与redis建立连接并尝试执行命令。
4)获得的reply指针的type不是期望的类型,
异常处理办法:断开redis连接再次与redis建立连接并尝试执行命令。
至此hiredis了解完毕,接下来就可以在其他模块中调用了。
1)下载地址
https://github.com/redis/hiredis
2)编译和安装
解压后的文件夹执行 make;make install;
3)头文件包含
include <hiredis/hiredis.h>
4)编译选项
makefile文件中加入 LDFLAGS = -lhiredis
2、主要结构
主要关注2个结构体,
1)redisContext
//对应与redis的连接
/* Context for a connection to Redis */
typedef struct redisContext {
int err; /* Error flags, 0 when there is no error */
char errstr[128]; /* String representation of error when applicable */
int fd;
int flags;
char *obuf; /* Write buffer */
redisReader *reader; /* Protocol reader */
enum redisConnectionType connection_type;
struct timeval *timeout;
struct {
char *host;
char *source_addr;
int port;
} tcp;
struct {
char *path;
} unix_sock;
} redisContext;
2)redisReply
//对应redis命令的回复结果
/* This is the reply object returned by redisCommand() */
typedef struct redisReply {
int type; /* REDIS_REPLY_* */
long long integer; /* The integer when type is REDIS_REPLY_INTEGER */
int len; /* Length of string */
char *str; /* Used for both REDIS_REPLY_ERROR and REDIS_REPLY_STRING */
size_t elements; /* number of elements, for REDIS_REPLY_ARRAY */
struct redisReply **element; /* elements vector for REDIS_REPLY_ARRAY */
} redisReply;
2、主要接口
主要有4个接口,
1)redisContext* redisConnect(const char *ip, int port)
//连接redis。
2)void *redisCommand(redisContext *c, const char *format, ...);
//执行redis操作命令
3)void freeReplyObject(void *reply);
//释放执行redis操作命令回复的内存
4)void redisFree(redisContext *c);
//释放连接上下文。
3、异常处理主要4种异常情况会出现,
1)获得的redisContext指针为null
异常处理办法:再次尝试与redis建立新的连接上下文。
2)获得的redisContext指针err不为0
异常处理办法:再次尝试与redis建立新的连接上下文。
3)获得的redisReply指针为null
异常处理办法:断开redis连接再次与redis建立连接并尝试执行命令。
4)获得的reply指针的type不是期望的类型,
异常处理办法:断开redis连接再次与redis建立连接并尝试执行命令。
至此hiredis了解完毕,接下来就可以在其他模块中调用了。
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e
added ecosystem file for PM2 4 年前
5def40a3
Add host customization support for the NodeJS version 4 年前
更多推荐
已为社区贡献1条内容
所有评论(0)