redis为什么性能好


本文摘自PHP中文网,作者(*-*)浩,侵删。

redis是非关系型内存数据库 数据存储于内存中,内存读取速度非常快,如果只是简单的 key-value,内存不是瓶颈。一般情况下,hash 查找可以达到每秒数百万次的数量级。 (推荐学习:Redis视频教程)

采用单线程,避免了不必要的上下文切换和竞争条件

内部实现采用epoll,采用了epoll+自己实现的简单的事件框架。epoll中的读、写、关闭、连接都转化成了事件,然后利用epoll的多路复用特性,绝不在io上浪费一点时间

因为Redis的操作都非常快速――它的数据全部在内存里,完全不需要访问磁盘。至于并发,Redis 使用多路 I/O 复用技术,本身的并发效率不成问题。

当然,单个 Redis 进程没办法使用多核(任一时刻只能跑在一个 CPU 核心上),但是它本来就不是非常计算密集型的服务。如果单核性能不够用,可以多开几个进程。

Redis采用了单线程的模型,保证了每个操作的原子性,也减少了线程的上下文切换和竞争。

另外,数据结构也帮了不少忙,Redis全程使用hash结构,读取速度快,还有一些特殊的数据结构,对数据存储进行了优化,如压缩表,对短数据进行压缩存储,再如,跳表,使用有序的数据结构加快读取的速度。

还有一点,Redis采用自己实现的事件分离器,效率比较高,内部采用非阻塞的执行方式,吞吐能力比较大。

string 类型,二进制安全的

hash 类型,是一个键值对的集合

List列表 底层是个链表

set 集合 无需的 通过hashtale实现

zset sort set 有序集合

更多Redis相关技术文章,请访问Redis数据库使用入门教程栏目进行学习!

以上就是redis为什么性能好的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

如何强制关闭Redis并重新启动

Redis是一个什么样的数据库

Redis适合哪些应用场景

什么是Redis读写分离

Redis有哪些集群模式

Redis缓存清理的方法

增加Redis命令的方法

如何实时监控Redis性能

Redis的特点有哪些

linux下查看Redis的安装目录的方法是什么

更多相关阅读请进入《Redis》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...