1、为什么不会?Nginx 还是多进程 + 单线程 模式的呢。
2、谁说它就是单线程了?不要断章取义哦!Redis中只有网络请求模块和数据操作模块是单线程的。而其他的如持久化存储模块、集群支撑模块等是多线程的。
3、Redis 操作基于内存,绝大多数操作的性能瓶颈不在 cpu。
4、在单线程中使用非阻塞多路复用 I/O技术。再加上Redis自身的事件处理模型将epoll中的连接,读写,关闭都转换为了事件,不在I/O上浪费过多的时间。
5、单线程避免了线程切换和竞态产生的消耗。
后来,Redis 在设计上采用将网络数据读写和协议解析通过多线程的方式来处理,对于命令执行来说,仍然使用单线程操作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。