• redis面试题集錦


    1为什么Redis需要把所有数据放到内存中?

    Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以Redis具有快速和数据持久化的特性。如果不将数据放到内存中,磁盘的I/O速度会严重影响redis的性能。在内存越来越便宜的今天,redis将会越来越受欢迎。如果设置了最大使用的内存,则数据已有记录数达到内存限值后将不能继续插入新值。

    2 redis两种持久化策略

    https://blog.csdn.net/u010785685/article/details/52366977

    Redis为什么使用单进程单线程方式也这么快

    http://www.cnblogs.com/syyong/p/6231326.html

    4 Redis内存模型

    https://blog.csdn.net/qq_26624661/article/details/79269740

    5  使用Redis有哪些好处?

    (1) 速度快,因为数据存在内存中,类似于HashMap,HashMap的优势就是查找和操作的时间复杂度都是O(1)

    (2) 支持丰富数据类型,支持string,list,set,sorted set,hash

    (3) 支持事务,操作都是原子性,所谓的原子性就是对数据的更改要么全部执行,要么全部不执行

    (4) 丰富的特性:可用于缓存,消息,按key设置过期时间,过期后将会自动删除

    6 redis相比memcached有哪些优势?

    (1) memcached所有的值均是简单的字符串,redis作为其替代者,支持更为丰富的数据类型

    (2) redis的速度比memcached快很多

    (3) redis可以持久化其数据

    7  redis常见性能问题和解决方案:

    (1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件

    (2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次

    (3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内

    (4) 尽量避免在压力很大的主库上增加从库

    (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3...

    这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。

     8 Redis的回收策略

      • volatile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰

      • volatile-ttl:从已设置过期时间的数据集(server.db[i].expires)中挑选将要过期的数据淘汰

      • volatile-random:从已设置过期时间的数据集(server.db[i].expires)中任意选择数据淘汰

      • allkeys-lru:从数据集(server.db[i].dict)中挑选最近最少使用的数据淘汰

      • allkeys-random:从数据集(server.db[i].dict)中任意选择数据淘汰

      • no-enviction(驱逐):禁止驱逐数据

     9 redis lua脚本

    https://www.cnblogs.com/wxgblogs/p/6850028.html

    10 Redis中的批量操作Pipeline管道模型

        减少网络开销去执行多个命令

      满足原子性

     复用性

    redis的单线程模型工作原理:

    https://blog.csdn.net/qq_38601777/article/details/91325622

  • 相关阅读:
    ThreadLocal
    layer.open()中属性content在IE 8中提示“网页无法显示”
    前端String类型转JSON类型
    表单异常自动提交
    div中图片居中
    使用struts2的内置标签,采用submit()提交表单时,浏览器报404
    使用@Test报java.lang.NullPointerException at org.eclipse.jdt.internal.junit4.runner.SubForestFilter.shouldRun(SubForestFilter.java:81)异常
    java web程序上传文件,浏览器显示连接被重置
    java导入ldif文件
    LDAP常见错误码
  • 原文地址:https://www.cnblogs.com/eryun/p/10139381.html
Copyright © 2020-2023  润新知