1.3 Redis的安装与调试
下面以Linux环境为例来安装Redis。
在http://download.redis.io/releases/上可以获得各个版本的Redis源码。本书以Redis 6.0.0版本为例,介绍源码包(源码包URL为http://download.redis.io/releases/redis-6.0.0.tar. gz)的下载、编译、安装方法。
如果在CentOS系统上编译,用户可能会遇到如下报错信息:
可以按照如下办法尝试解决。
然后执行make命令。
至此,Redis 6.0.0的安装、编译完成。生成的可执行文件在/usr/local/bin目录下。
说明:
1)redis-benchmark是官方自带的Redis性能测试工具。
2)当AOF或者RDB文件存在语法错误时,可以使用redis-check-aof或者redis-check-rdb修复。
3)redis-cli是客户端命令行工具,可以通过redis-cli -h {host} -p {port}命令连接到指定的Redis服务器。
4)redis-sentinel是Redis哨兵启动程序。
5)redis-server是Redis服务端启动程序。
例如,使用redis-server启动服务端程序(默认监听端口是6379):
使用redis-cli连接Redis服务器,并添加key-value对:
GDB是由GNU开源组织发布的,在UNIX/Linux操作系统下工作,是一个基于命令行的功能强大的程序调试工具。下面介绍如何通过GDB来调试Redis。
GDB启动redis-server服务端程序:
使用b命令在main函数入口增加断点:
使用r命令运行:
从上面的输出结果可以看到,代码在main函数处停止执行。接下来,使用n命令执行下一步操作:
使用p命令查看某个变量的信息:
这里只是简要介绍使用GDB调试Redis程序,更多GDB的使用技巧还有待读者去研究。
当然阅读源码时,还有很多比较方便的源码阅读工具可供使用。例如,Windows环境下有一款功能强大的IDE—Source Insight,它内置了C++代码分析功能,还能自动维护项目内的符号数据库,非常方便;Mac环境下有功能强大的IDE—Understand,它具备代码依赖、图形化等实用功能;Linux环境下可以使用Vim+Ctags来阅读源码,其中Ctags是Vi m下阅读源码的一个辅助工具,可以生成函数、类、结构体、宏等语法结构的索引文件,它的使用方法也非常简单。关于这些源码阅读工具的具体安装、使用教程,读者可以自行查阅,这里不做详细介绍。