Redis的主要功能模块分为两块:网络I/O和命令执行,一直以来是单线程模型,但从Redis 6.0之后,采用了多个I/O线程来处理网络请求,这是因为随着网络硬件的性能提升,Redis的性能瓶颈时常会出现在网络I/O的处理上。但开启多线程后,并不会导致线程并发安全问题?因为Redis的多线程部分只是用来处理网络数据的读写和协议解析,执行命令仍然是单线程顺序执行。Redis官方表示,Redis 6.0版本引入的多线程I/O特性对性能提升至少是一倍以上。