Redis单线程

来源:互联网 发布:百度快速排名优化公司 编辑:程序博客网 时间:2024/05/22 00:31

总体来说快速的原因如下:
1)绝大部分请求是纯粹的内存操作(非常快速)
2)采用单线程,避免了不必要的上下文切换和竞争条件
3)非阻塞IO
内部实现采用epoll,采用了epoll+自己实现的简单的事件框架。epoll中的读、写、关闭、连接都转化成了事件,然后利用epoll的多路复用特性,绝不在io上浪费一点时间

这3个条件不是相互独立的,特别是第一条,如果请求都是耗时的,采用单线程吞吐量及性能可想而知了。应该说redis为特殊的场景选择了合适的技术方案。


作者:彭伟
链接:https://www.zhihu.com/question/19764056/answer/13364800
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
原创粉丝点击