Redis(一)特性

作者: 我犟不过你 | 来源:发表于2020-10-19 15:50 被阅读0次

    redis的特性

    1、内存,快
    2、单线程worker,io threads
    3、连接多,epoll
    4、kv模型,5种v
    5、具有本地方法,计算向数据移动,io优化
    6、串行化、原子: 相比于并行那个更优?

    具有本地方法,计算向数据移动,io优化

    memechache是kv模型,但是value的值只能是string类型的,当我们需要使用value的某个数据,需要将value全量取回,增加io成本(数据向计算移动)。
    而redis提供5种value类型,并且具有本地方法,可以内部计算后,将数据直接返回给用户(计算向数据移动)。

    redis串行化模型(redis版本6.x之前)

    image.png

    多个客户端client同时访问redis,redis首先会通过多路复用器epoll获取io事件,发现有数据要处理,然后第二步在此循环遍历的去读取数据,该过程串行化,读取数据后进行计算,同样是串行化。

    如何发挥多核cpu的最大性能?io threads(redis版本6.x之后,默认未开启)##

    单线程模型

    上图为redis默认的单线程模型,看到处理两个客户端的请求需要6个时间片。

    io threads

    上图为io threads,多线程模型,在发生io时,通过多线程模式处理,发现总共需要4个时间片,在提高cpu利用率的同时,极大的提示redis的效率。

    通过上面的介绍,应该能够说明redis的特性了,关于redis的io多线程模型,提供一个参考地址,本文不多做介绍。
    https://blog.csdn.net/wsdc0521/article/details/106766587

    相关文章

      网友评论

        本文标题:Redis(一)特性

        本文链接:https://www.haomeiwen.com/subject/chjkmktx.html