学网站建设 赚钱,微网站的定义,六安网站关键词排名优化地址,企业网站优化设计应该把什么放在首位文章目录 1 Redis的安装与API的使用1.1 安装目录及环境变量1.2 设置远程客户端连接和守护进程1.3 启动redis1.4 Hiredis API的使用1.5 我的动态库和头文件 2 Redis的使用2.1 初始化时候2.2 结束的时候 3 测试4 Makefile5 游戏业务总结 1 Redis的安装与API的使用
1.1 安装目录及… 文章目录 1 Redis的安装与API的使用1.1 安装目录及环境变量1.2 设置远程客户端连接和守护进程1.3 启动redis1.4 Hiredis API的使用1.5 我的动态库和头文件 2 Redis的使用2.1 初始化时候2.2 结束的时候 3 测试4 Makefile5 游戏业务总结 1 Redis的安装与API的使用
1.1 安装目录及环境变量
7.2版本redis-cli命令在bin目录下:
vim /etc/profileexport REDIS_HOME/usr/local/redis/bin
export PATH$PATH:$REDIS_HOME1.2 设置远程客户端连接和守护进程
cp /usr/local/redis/redis-7.2.3/redis.conf /usr/local/redis/bin/
vim /usr/local/redis/bin/redis.conf1.3 启动redis
redis-server /usr/local/redis/bin/redis.conf1.4 Hiredis API的使用
git clone https://github.com/redis/hiredis.git
cd hiredis
make
make installmkdir -p /usr/local/include/hiredis /usr/local/include/hiredis/adapters /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2
cp -pPR hiredis.h async.h read.h sds.h alloc.h sockcompat.h /usr/local/include/hiredis
cp -pPR adapters/*.h /usr/local/include/hiredis/adapters
cp -pPR libhiredis.so /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2/libhiredis.so.1.2.1-dev
cd /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2 ln -sf libhiredis.so.1.2.1-dev libhiredis.so ln -sf libhiredis.so.1.2.1-dev libhiredis.so.1
cp -pPR libhiredis.a /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2
mkdir -p /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2/pkgconfig
cp -pPR hiredis.pc /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2/pkgconfig1.5 我的动态库和头文件
根据上述的输出信息我把动态库直接拷贝到了系统目录下,程序加载的时候加载的是libhiredis.so.1.2.1-dev cp /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2/libhiredis.so /usr/libcp /usr/local/:/usr/local/protobuf/lib/:/opt/instantclient_12_2/libhiredis.so.1.2.1-dev /usr/lib头文件的位置没有改变使用的默认设置
usr/local/include/hiredis路径和库要根据实际情况设置 C函数库包含头文件hiredis/hiredis.h ,编译时指定链接参数为-L/usr/lib -lhiredis。运行时若提示找不到共享库则在.bashrc最末端添加一句export LD_LIBRARY_PATH/usr/lib,重新打开终端运行。 redisConnect跟数据库建立链接redisFree释放掉。redisCommand发命令并通过返回值取出结果freeReplyObject释放掉。
2 Redis的使用
2.1 初始化时候
//记录当前姓名到redis的game_name//1 连接redisauto context redisConnect(127.0.0.1, 6379);//2 发送lpush命令if (NULL ! context){freeReplyObject(redisCommand(context, lpush game_name %s, szName.c_str()));redisFree(context);}2.2 结束的时候 //从redis game_name中删掉当前姓名auto context redisConnect(127.0.0.1, 6379);if (NULL ! context){freeReplyObject(redisCommand(context, lrem game_name 1 %s, szName.c_str()));redisFree(context);}3 测试 4 Makefile
game:*.cpp *hg -Wall -g -pthread -stdc11 $^ -o $ -lzinx -lpthread -lprotobuf5 游戏业务总结