• Redis(一)--- 概述


     使用redis很长时间了,但只是限于使用,一直也没有进行系统的学习与底层研究,现系统的学习一下redis并记录笔记。

    Redis

    1、Nosql 非关系型数据库,key-value键值对存贮。

    2、内存型数据库,支持持久化,可将数据保存在硬盘上。

    3、单线程处理请求,但采用io多路复用技术。

    4、读写性能好,支持集群。

    Redis数据类型

    1、String 类型:最基础的数据类型,简单的key-value键值对,value可以是任何数据,不限制类型,但大小最多不能超过512M。

    2、list 类型:列表类型,类似一个队列,左侧为表头,右侧为表尾,左右两侧都可以插入数据;底层实现为链表。

    3、set 类型:无序集合类型,key-values 集合,values内部的元素不重复。

    4、zset 类型:有序集合类型,数据结构类似于java中的Map<String,List<Object>>,key-values结构,values内部元素有序。

    5、hash 类型:hash表结构,类似于java中的Map<String,Map<String,Object>>。

    Redis持久化方式

    1、RDB持久化:快照snapshot持久化方式,把当前内存中的数据集快照写入硬盘,恢复数据时直接读取硬盘上的快照文件。

    2、AOF持久化:通过记录redis服务器所执行的写命令日志进行持久化,恢复数据是,执行保存的写命令进行数据恢复。

    Redis过期删除策略

    1、redis存入数据时可以设置过期时间,如果不设置,则永不过期;

    2、redis到期删除策略是定期随机抽样+惰性删除。

    Redis内存淘汰机制

    1、no-enviction:禁止淘汰数据,内存不足则报错。

    2、allkeys-random:从内存数据集中随机淘汰数据。

    3、allkey-lru:从内存数据集中淘汰最近最少使用数据(最常用)。

    4、volatile-random:从设置过过期时间的数据集中随机淘汰数据,未设置过期时间的数据不受影响。

    5、volatile-lru:从设置过过期时间的数据集中淘汰最近最少使用数据。

    6、volatile-ttl:从设置过过期时间的数据集中淘汰将要过期的数据。

  • 相关阅读:
    【.NET深呼吸】Zip文件操作(1):创建和读取zip文档
    【Win10 应用开发】实现数据的增量加载
    【Win10 应用开发】使用“实时可视化树”工具查看应用界面元素
    将中文字符串分割为数组 解决str_split中文乱码php
    Mac搭建PHP+rabbitMQ环境
    常用笔记:PHP
    常用笔记:MySQL
    常用笔记:Linux
    常用笔记:Web前端
    常用笔记:工具使用
  • 原文地址:https://www.cnblogs.com/MouseDong/p/11120751.html
Copyright © 2020-2023  润新知