1.什么是redies?

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value(nosql)数据库。它基于内存存储,速度快。

2.redis的五种常见的数据类型

String:类似于map<string,string>类型,key,vaule都是string类型。
常见的操作指令:

setnx key value:如果key存在就不设置值,返回0,如果不存在key就设置值(为原子性操作)
获取原来的值并设置新值:getset key newValue
expire key :设置过期时间;
设置值:set key vaule;
获取值:get key;
批量插入值:mset key1 vaule1 key2 vaule2;
批量获取值:mget key1 key2;
删除值:del key;
vaule自增:incr key;
vaule自减:decr key;
指定增加多少:incrby key 10 (增加10);
指定减少多少:decrby key 10;

Hash:可以看做是hash中key为一个对象的key,vaule为一个对象的vaule,vaule中有很多对象的属性,比如,key值为“学生”,vaule可以为name=张三,age=18。
hash的常见指令:

设置值:hset key field value;
获取值:hget key field ;
获取key的所有属性值:hgetall key;
批量插入值:hmset key filed value [field value...];
批量获取值:hmget key field1 field2……;
删除值:hdel key feild;
获取所有属性的值:hgetall key ;
获取key属性的个数:hlen key;
原key的field不存在则set成功,返回1,否则失败,返回0:hsetnx key filed vaule;

list:类似于链表结构,可以从左右两边分别插入,如果该链被移除,则该条不存在
list类型常见的数据指令:

从左侧插入值:lpush key vaule[vaule....];
lpushx:和lpush相似,但是会判断key是否存在,若key不存在则不进行任何操作;
rpushx:与lpushx相似;
右边插入数据  r是right的缩写:rpush key vaule[vaule....]
查看start---end中的数据,左包右包  -1表示到最后:  lrange key start end;
查看链表总长度:llen key;
弹出左边第一个数据:lpop key;
弹出右边第一个数据:rpop key;
阻塞式弹出:如左侧阻塞式弹出某一个key值,就会看有没有key值如果有就先弹出key值,再从左往右弹出属性的值,如果没有就会出现命令阻塞,指导添加新的值或者命令时间过期,如果同时写多个key值时,按参数 key 的先后顺序依次检查各个列表,弹出第一个非空列表的头元素。
左侧阻塞式弹出:blpop key[key...] timeout;(timeout为过期时间)
右测阻塞式弹出:brpop key[key...] timeout;
弹出list1右边的放入list2左边的:rpoplpush list1 list2;(医院排队);
阻塞版本;brpoplpush:阻塞版本;
lrem key count value:
count>0从左边删除count个value
count<0从右边删除count个value
count=0删除所有的value

set:是string类型的无序集合,集合成员唯一不允许出现重复数据

set集合中添加元素:sadd key element [element...];
查看所有元素:smembers key;
查看元素是否属于该集合:sismember key element;
删除集合中的元素:srem  检查指定元素是否存在于集合中,那么移除这个元素
查看元素中集合的数量:scard key;
随机获取集合中某一元素:srandmember key;

zset:zset在set集合的基础上给每一个元素一个分数描述,从而使元素变得有序可循,默认按分数升序排序。

添加元素 每个元素都会携带一个分数:zadd key score member1 score member2…

Redis内存满了怎么办?

  1. 一般Redis的内存都是可以通过配置文件来配置最大内存的大小,条件允许的话可以通过改变Redis的内存大小来解决。
//设置Redis最大占用内存大小为100M
127.0.0.1:6379> config set maxmemory 100mb
//获取设置的Redis能使用的最大内存大小
127.0.0.1:6379> config get maxmemory
  1. Redis的内存淘汰
    既然可以设置Redis最大占用内存大小,那么配置的内存就有用完的时候。那在内存用完的时候,还继续往Redis里面添加数据不就没内存可用了吗?
    noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)

allkeys-lru:从所有key中使用LRU算法进行淘汰

volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰

allkeys-random:从所有key中随机淘汰数据

volatile-random:从设置了过期时间的key中随机淘汰

volatile-ttl:在设置了过期时间的key中,根据key的过期时间进行淘汰,越早过期的越优先被淘汰

redies的复习总结相关推荐

  1. 已知小红今年12岁c语言编程,C语言程序设计第轮复习习题.doc

    C语言程序设计第轮复习习题 第1章 C语言概述.以下叙述正确的是 . A.在C程序中,main函数必须位于子程序的最前面 B.C程序的每一行中只能写一条语句 C.在对一个C程序进行编译的过程中,可发现 ...

  2. 可微偏导数一定存在_数学分析复习——偏导数(1)

    前言:微积分开始就是死刷题,背定义.然后我发现自己遗忘的速度简直怀疑人生.特别是在学物理以后,发现微积分根本就没有理解.一上来基础就没打好.所以希望能够慢慢地把数学分析,线性代数,偏微分,实变补起来 ...

  3. 考研计算机专业课怎么复习,2016考研计算机专业课如何复习?

    2016考研计算机专业课如何复习? ?基础复习阶段 以指定参考书为主,兼顾笔记,进行专业课的第一轮复习.看书要以理解为主,不必纠缠于细节,并在不懂的知识点处做上标记. 第一步,选择一本难度适宜.内容全 ...

  4. 计算机应用 含升学方向,对口升学《计算机应用基础》复习资料总汇(含答案))讲述.doc...

    对口升学<计算机应用基础>复习资料总汇 第一部分?? 一.单项选择题 1.世界上第一台电子数字计算机取名为(????). A.UNIVAC????B.EDSAC????C.ENIAC??? ...

  5. Spring复习笔记:4

    在复习笔记三中我们进行的案例的编写,我们可以发现,就算使用了注解的方式,xml配置文件文件还是不能够删除,现在我们来将一些新的注解可以让我们去掉xml配置文件. @Configuration 作用:指 ...

  6. Mybatis复习笔记:1

    关于模糊查找 模糊查找其实有两种基本操作(之前学的时候看的不太仔细,漏了-) 第一种 <select id="findByType" parameterType=" ...

  7. 计算机rsnge指令,计算机二级office Excel 函数复习重点

    原标题:计算机二级office Excel 函数复习重点 计算机二级来袭! 近期,计算机二级考试即将开始,小编在这里为大家奉上众多难点中的一个考点的详解--<excel函数的应用>,希望能 ...

  8. 语言都是相通的,学好一门语言,再学第二门语言就很简单,记录一下我复习c语言的过程。...

    语言都是相通的,学好一门语言,再学第二门语言就很简单,记录一下我复习c语言的过程. 为了将本人的python培训提高一个层次,本人最近买了很多算法的书. 这个书上的代码基本都是c语言实现的,c语言很久 ...

  9. 单片微型计算机概念及组成,中国民用航空飞行学院2014年微机原理与接口考研复习大纲...

    中国民用航空飞行学院硕士研究生入学考试 801<微机原理与接口>复习大纲 第一部分  考试说明 一. 考试性质 <微机原理与接口>是中国民用航空飞行学院硕士生入学考试科目之一. ...

  10. Hibernate复习之Hibernate基本介绍

    众所周知.眼下流行的面向对象的对象关系映射的Java持久层框架有MyBatis和Hibernate.他们都是对象关系映射ORM. 解决的主要问题就是对象-关系的映射.域模型和关系模型都分别建立在概念模 ...

最新文章

  1. R语言广义线性模型泊松回归(Poisson Regression)模型
  2. 谷歌推出数据集搜索专用引擎Dataset Search
  3. 【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
  4. 洛谷——P2118 比例简化
  5. c 冒泡排序_C语言中选择排序和冒泡排序
  6. 存储过程编写经验和优化措施 1
  7. vcredist_x86.exe 静默安装方法
  8. dell刷sn_戴尔电脑强刷 BIOS 的方法
  9. 易语言新手入门教程第十五课 - QQ自动登录器第三部分
  10. 解决uniapp分享到微信跳转两次app>打开微信>打开APP>打开微信 的问题
  11. win10开机慢怎么解决_win10开机速度变慢的解决方法教程
  12. 电脑管理android手机版下载安装,airdroid下载
  13. redhat7图形界面网卡设置_初学Linux之配置网卡的四种方法
  14. 计算机英语测试,计算机专业英语测试
  15. ibverbs文档翻译
  16. memory compression关闭,亲测有效
  17. 简阳市简阳中学2021年高考成绩查询,2021年简阳中学升学率怎么样?
  18. iOS Xcode Git 如何忽略UserInterface.xcuserstate文件
  19. js实现飞机大战小游戏
  20. 蜂鸟E203学习笔记(四)——取指

热门文章

  1. 福昕阅读器3.1.3.1030破解方法
  2. 计算机组成原理(2021最新版)面试知识点集锦
  3. 天正双击墙体不能编辑_入门必备!20个超实用天正CAD技巧,设计院高手都在收藏...
  4. eclipse如何设置眼睛保护色
  5. 省级应急指挥平台建设方案
  6. ubuntu下安装宋体simsun
  7. 计算机仿真技术交通灯设计,交通灯的设计心得体会总结
  8. Eucalyptus Cloud 介绍
  9. 电子电路之电阻篇01——贴片电阻01.常用阻值及标注
  10. micro usb接口定义图