redis本地安装、debug环境搭建

通过断点调试redis代码,能够让我们深入了解redis的内部执行流程。

下载redis代码、构建、测试

git clone git@github.com:redis/redis.git
cd redis
make

make构建好后,就可以启动redis-server并用redis-cli链接调用了。

启动redis-server

启动redis-cli

然后就可以通过命令行调用测试redis。

用IDE打开代码、debug调试

我们使用Jetbrains提供的Clion,点击菜单栏的File -> Open,选择redis项目的目录打开。

打开项目后,点击Add Configuration, 添加一个Makefile Application

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sHQrjH0E-1649429567556)(https://bytejava.cn/assets/images/76d255b41f7c5bf2a6aaafdf5ba3d0592b9fa097c53cb05a59dc7afaefebcf2e.png)]

Configuration配置里name随便填写,比如make redis。然后点击Target后边的按钮添加Custom Build Target

picture 2

点击Add target,名字填make redis,点击Build右边的三个点的按钮。

picture 3

添加一个make redis的External Tools, Program填make, working directory选择redis的项目目录

picture 4

然后依次点击Apply,OK保存。 Configuration中配置按Target后,Executable选择src/redis-server,点击Apply, OK保存。

picture 7

菜单栏会出现我们添加的make redis,点击debug按钮

picture 6

就可以成功构建并启动redis server了,不过要注意要提前停止之前在命令行启动的redis-server避免端口冲突。

picture 8

在代码dict.c文件中dictFind方法左侧加上一个断点,用redis-cli发送一个get hello的命令,就可以看到redis停在这个断点上。 有了debug功能,我们就可以单步调试、查看变量、查看调用栈,了解redis细节不再是难事。

[外链图片转存中…(img-pKhJWwgP-1649429567559)]


版权声明:本文为ilovegou原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。