redies的复习总结
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内存满了怎么办?
- 一般Redis的内存都是可以通过配置文件来配置最大内存的大小,条件允许的话可以通过改变Redis的内存大小来解决。
//设置Redis最大占用内存大小为100M
127.0.0.1:6379> config set maxmemory 100mb
//获取设置的Redis能使用的最大内存大小
127.0.0.1:6379> config get maxmemory
- Redis的内存淘汰
既然可以设置Redis最大占用内存大小,那么配置的内存就有用完的时候。那在内存用完的时候,还继续往Redis里面添加数据不就没内存可用了吗?
noeviction(默认策略):对于写请求不再提供服务,直接返回错误(DEL请求和部分特殊请求除外)
allkeys-lru:从所有key中使用LRU算法进行淘汰
volatile-lru:从设置了过期时间的key中使用LRU算法进行淘汰
allkeys-random:从所有key中随机淘汰数据
volatile-random:从设置了过期时间的key中随机淘汰
volatile-ttl:在设置了过期时间的key中,根据key的过期时间进行淘汰,越早过期的越优先被淘汰
redies的复习总结相关推荐
- 已知小红今年12岁c语言编程,C语言程序设计第轮复习习题.doc
C语言程序设计第轮复习习题 第1章 C语言概述.以下叙述正确的是 . A.在C程序中,main函数必须位于子程序的最前面 B.C程序的每一行中只能写一条语句 C.在对一个C程序进行编译的过程中,可发现 ...
- 可微偏导数一定存在_数学分析复习——偏导数(1)
前言:微积分开始就是死刷题,背定义.然后我发现自己遗忘的速度简直怀疑人生.特别是在学物理以后,发现微积分根本就没有理解.一上来基础就没打好.所以希望能够慢慢地把数学分析,线性代数,偏微分,实变补起来 ...
- 考研计算机专业课怎么复习,2016考研计算机专业课如何复习?
2016考研计算机专业课如何复习? ?基础复习阶段 以指定参考书为主,兼顾笔记,进行专业课的第一轮复习.看书要以理解为主,不必纠缠于细节,并在不懂的知识点处做上标记. 第一步,选择一本难度适宜.内容全 ...
- 计算机应用 含升学方向,对口升学《计算机应用基础》复习资料总汇(含答案))讲述.doc...
对口升学<计算机应用基础>复习资料总汇 第一部分?? 一.单项选择题 1.世界上第一台电子数字计算机取名为(????). A.UNIVAC????B.EDSAC????C.ENIAC??? ...
- Spring复习笔记:4
在复习笔记三中我们进行的案例的编写,我们可以发现,就算使用了注解的方式,xml配置文件文件还是不能够删除,现在我们来将一些新的注解可以让我们去掉xml配置文件. @Configuration 作用:指 ...
- Mybatis复习笔记:1
关于模糊查找 模糊查找其实有两种基本操作(之前学的时候看的不太仔细,漏了-) 第一种 <select id="findByType" parameterType=" ...
- 计算机rsnge指令,计算机二级office Excel 函数复习重点
原标题:计算机二级office Excel 函数复习重点 计算机二级来袭! 近期,计算机二级考试即将开始,小编在这里为大家奉上众多难点中的一个考点的详解--<excel函数的应用>,希望能 ...
- 语言都是相通的,学好一门语言,再学第二门语言就很简单,记录一下我复习c语言的过程。...
语言都是相通的,学好一门语言,再学第二门语言就很简单,记录一下我复习c语言的过程. 为了将本人的python培训提高一个层次,本人最近买了很多算法的书. 这个书上的代码基本都是c语言实现的,c语言很久 ...
- 单片微型计算机概念及组成,中国民用航空飞行学院2014年微机原理与接口考研复习大纲...
中国民用航空飞行学院硕士研究生入学考试 801<微机原理与接口>复习大纲 第一部分 考试说明 一. 考试性质 <微机原理与接口>是中国民用航空飞行学院硕士生入学考试科目之一. ...
- Hibernate复习之Hibernate基本介绍
众所周知.眼下流行的面向对象的对象关系映射的Java持久层框架有MyBatis和Hibernate.他们都是对象关系映射ORM. 解决的主要问题就是对象-关系的映射.域模型和关系模型都分别建立在概念模 ...
最新文章
- R语言广义线性模型泊松回归(Poisson Regression)模型
- 谷歌推出数据集搜索专用引擎Dataset Search
- 【Android 应用开发】Canvas 精准绘制文字 ( 测量文本真实边界 | 将文本中心点与给定中心点对齐 )
- 洛谷——P2118 比例简化
- c 冒泡排序_C语言中选择排序和冒泡排序
- 存储过程编写经验和优化措施 1
- vcredist_x86.exe 静默安装方法
- dell刷sn_戴尔电脑强刷 BIOS 的方法
- 易语言新手入门教程第十五课 - QQ自动登录器第三部分
- 解决uniapp分享到微信跳转两次app>打开微信>打开APP>打开微信 的问题
- win10开机慢怎么解决_win10开机速度变慢的解决方法教程
- 电脑管理android手机版下载安装,airdroid下载
- redhat7图形界面网卡设置_初学Linux之配置网卡的四种方法
- 计算机英语测试,计算机专业英语测试
- ibverbs文档翻译
- memory compression关闭,亲测有效
- 简阳市简阳中学2021年高考成绩查询,2021年简阳中学升学率怎么样?
- iOS Xcode Git 如何忽略UserInterface.xcuserstate文件
- js实现飞机大战小游戏
- 蜂鸟E203学习笔记(四)——取指