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为什么性能好的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

centos下Redis的安装方法介绍

linux如何连接Redis

Redis的hash怎么实现的

Redis存放日志及热门文章

Redis是单线程的原因及高并发快的3大原因详解

Redis能存多少个key

RedisRedis扩展在linux平台的安装

为什么Redis是单线程

为什么都说Redis很好用

Redis序列化方式哪几种

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


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

数据库系统概念 第6版

机械工业出版社

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



打赏

取消

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

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

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

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

评论

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