当执行像'get'这样的redis命令时到底发生了什么?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当执行像'get'这样的redis命令时到底发生了什么?相关的知识,希望对你有一定的参考价值。
我读到redis客户端为get命令创建一个字节字符串,并将其传递给处理该命令的服务器。服务器如何处理命令?哪个函数按什么顺序调用?有人可以详细说明吗?
答案
这是一篇伟大的文章https://pauladamsmith.com/articles/redis-under-the-hood.html,解释了命令的处理。该命令被转换为字节字符串,并被发送到服务器队列,该队列接收,执行,如果传递了错误的args则附加错误标志,并返回结果。希望这可以帮助..
另一答案
我认为如果你对gdb有所了解会更好(http://www.cs.cmu.edu/~gilpin/tutorial/)
你可以在Redis的main函数中添加一个断点,然后发送一个get命令来查看发生了什么。
一个好主意是你知道epoll或select或kqueue。
以上是关于当执行像'get'这样的redis命令时到底发生了什么?的主要内容,如果未能解决你的问题,请参考以下文章
关于laravel 5.3 使用redis缓存出现 找不到Class 'PredisClient' not found的问题