线程模型

Redis 是单线程吗?

Redis单线程指的是【接收客户端请求->解析请求->对数据进行读写操作->发送数据给客户端】这个过程由主线程完成的

在2.6版本会启动处理关闭文件和AOF刷盘任务

4.0版本会增加lazyFree线程释放内存,例如unlink key 、flushdb async、 flushall async 会把删除命令提交给后台线程操作,这样不会阻塞主线程,del会在主线程删除,对于大key最好还是使用unlink

这些都是耗时操作会阻塞主线程。三种任务都有各自的任务队列,会去消费这些任务

redis线程模型