1、redis简介

Remote Dictionary Server

Redis 与其他 key - value 缓存产品有以下三个特点:

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Save。

Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。(其他kv的支持何种类型?)

性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。

Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。

2、Redis 安装,配置

压缩包解压就好。

阿里云Redis。

数据库的数量,日志的等级,端口,密码等,存到磁盘,是否压缩存储,存放位置,数据库文件名。

3、数据类型

支持5种数据类型。字符串类型,hash类型,list类型,集合类型,有序集合类型。

Exists key

3.1)String 512M最大。

设置key存在,同名会覆盖,过期时间也会覆盖。

Set test “CBI”

Get test

Get Range test 0 1      -1 -2 倒着截取

GetSet test value 一个原子

MSet key1 value1 key2 value2

MGet key1 key2

Strlen key

SetRange key

SetNX key value不存在才能成功

SetEX key seconds value 过期时间是秒

TTL key 看生存时间

MSetNX 多个不存在,正确就都正确,原子性

PSetEX 以毫秒为单位

PTTL key 看生存时间毫秒

INCR key 直接+1

INCRBY key value(增量)

INCRBYFLOAT key value(浮点增量)

DECR key

DECRBY key 指定增量

APPEND key value字符串末尾追加新值

3.2)hash 存对象

HSet key field value

HGet key field value

HSetNX key field value 如果不存在,nx

HMset key field1 value1 field2 value2 一次建好一个hash,建一个field有部分重合的

HMget

Hgetall key 返回key中的所有的field value

Hkeys key

HVals key

HExists key field

HLen key

HINCRBY key field value数值可以

HINCRBYFLOAT key field value

HDEL KEY FIELD FIELD 可以删除多个

3.2)key相关的命令

Keys pattern 。

*匹配任意个

?匹配任意一个

[]匹配方括号之间的一个字符

\x匹配特殊字符

Keys *c?

Exists key

TYPE key

EXPIRE key seconds

EXPIREAT key timestamp

PEXPIRE key seconds 毫秒

PEXPIREAT key timestamp

TTL key 返回生命周期

PTTL key

PERsist key 不过期

DEL key key key 可以删除多个

Randomkey

Rename key newkey

renameNX key newkey 不存在的时候生效

DUMP key 序列化给定的key,返回序列化之后的值

RESTORE key tt value反序列化

MOVE key dbid 将key移动到另外的库中 select 0 ,0号数据库

3.4)列表

最新的100条,热点新闻,列表很快

LPUSH 向左端添加一个原色

Lpush key value value value 。。。。

Lrange key int int

Rpush 从右边添加

LPUSHX 从左边添加,如果存在的话

RPUSHX

LPOP 弹出左边第一个

RPOP

LLEN list长度

LREM key count value  复杂一点 count3种情况 》0 《0 = 0

LINDEx key index

LSET key index value

LTRIM key start stop 只保留

LInsert key before/after pivot value

RPOPLPUSH list1 list2从一个列表转入到另外一个列表

BLPOP 是LPOP的阻塞版本

3.5)Set 集合类型 无序集合 集合不能重复

Sadd key member member

SMembers key

SISmember key value

SRem key value

SPOP key value 删除并返回一个随机元素

Srandmember key count  count大于 正数 负数 不同结果

SDiff key1 key2 不在的,由左向右

Sinter key1 key2 交集

Sunion key1 key2 并集

Scard key 返回个数

Sdiffstore newkey key1 key2差集结果保存到指定集合中

SInterstore newkey key1 key2

SUnion newkey key1 key2

Smove oldkey newkey member 将原来的一个元素移动到新集合中

3.6)ZSet 有序集合 耗一点内存

ZAdd key score member +inf正无穷大 -inf 负无穷大 分数相同 ascii码

ZScore key member

Zrange key strat stop [withscores]返回分数区间的值,按照从小到大

ZREVrange key start stop 按照从大到小

Zrangebyscore key start stop

Zrevrangebyscore key start stop 从大到小

Zincrby key incr member

Zcard key 返回总数

Zcount key min max 返回区间的数量

ZRem key member

ZREMrangebyrank key start stop 按照排名区间删除,从小到大

ZREMrangebyscore key start stop 按照分数区间删除

Zrank key member

Zrevrank key member

ZinterStore newkey count key1 key2 [weights weight weight]分数乘以权重 [aggregate]交集score默认求和

ZunionStore newkey ount key1 key2 [weights weight weight]分数乘以权重 [aggregate]交集score默认求和

4、Redis中的事务

4.1)Multi开启事务 开启以后,事务块中多条会变成一个事务执行,用EXEC执行

4.2)EXEC执行命令

4.3)监视一个或者多个key WATCH,key在执行之前被其他命令改动,则取消事务

4.4)UNwatch 取消对key的监视

4.5)discard 取消事务

4.6)事务中的错误处理。语法错误不执行;运行时错误,其他命令仍然可以被执行。

5、redis连接相关

5.1)ping pong

5.2)echo string

5.3)quit

5.4)shundown

5.5)auth pwd指定身份验证 config set requirepass pwd

5.6)select 选择数据库

6、生存时间

Expire expireat pexpire persist TTL PTTL

Session的保存。

7、性能测试

redis-benchmark -n 10000

8、排序

8.1)

SORT key ASC/DESC 默认对数字排序

SORT key alpha

汉字识别UTF-8

8.2)

Limit

Sort key alpha limit 0 5 [desc]

8.3)根据外部key的权重排序

Sort key by otherkey

8.4)根据排序结果取出键值

9、管道技术

TCP协议。

Redis的入门及注意事项的更多相关文章

  1. 【转】redis数据库入门教程(全面详细)+面试问题

    [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8.redis ...

  2. 超强、超详细Redis数据库入门教程

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...

  3. Redis快速入门:安装、配置和操作

    本文是有关Redis的系列技术文章之一.在之前的文章中介绍了<Redis快速入门:初识Redis>,对Redis有了一个初步的了解.今天继续为大家介绍Redis如何安装.配置和操作. 系列 ...

  4. Java中Redis简单入门

    Redis是一个开源的,先进的 key-value 存储可用于构建高性能,可扩展的 Web 应用程序的解决方案. Redis官方网网站是:http://www.redis.io/,如下: Redis ...

  5. 超强、超详细Redis数据库入门教程(转载)

    这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下   [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...

  6. Redis 快速入门

    Redis 快速入门 谈到Redis,大家应该都不陌生.它是用c语言开发的一个高性能键值数据库,主要用于缓存领域.本章通过Redis的安装,Redis的五大数据类型,Redis的Java客户端,Red ...

  7. Redis从入门到精通:初级篇

    原文链接:http://www.cnblogs.com/xrq730/p/8890896.html,转载请注明出处,谢谢 Redis从入门到精通:初级篇 平时陆陆续续看了不少Redis的文章了,工作中 ...

  8. .NET分布式缓存Redis从入门到实战

    一.课程介绍 今天阿笨给大家带来一堂NOSQL的课程,本期的主角是Redis.希望大家学完本次分享课程后对redis有一个基本的了解和认识,并且熟悉和掌握 Redis在.NET中的使用. 本次分享课程 ...

  9. 超详细Redis数据库入门教程

    [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用redis4.学会安装redis5.学会启动redis6.使用redis客户端7.redis数据结构 – 简介8.redis ...

随机推荐

  1. BZOJ 1711: [Usaco2007 Open]Dining吃饭

    1711: [Usaco2007 Open]Dining吃饭 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 902  Solved: 476[Submit ...

  2. BZOJ 3489: A simple rmq problem

    3489: A simple rmq problem Time Limit: 40 Sec  Memory Limit: 600 MBSubmit: 1594  Solved: 520[Submit] ...

  3. Spring拦截机制之后端国际化心得

    需求 前端请求的header里带有Prefer_Lang参数,向后端传递国际化信息,后端需要在处理业务之前(建立拦截机制),将Prefer_Lang保存于线程上下文. 思路分析 初次接收该需求时,为了 ...

  4. Javascript模板引擎插件收集

    为什么要用JS的模板引擎,打个比方,如果你要通过接口绑定数据,最终要加进去DOM中,我们普遍的做法就是不断的+,最终append进去,但是这样的做法就是后续人员压根就没法维护.所以这时模板引擎出来了. ...

  5. zookeeper原理解析-序列化

    1)底层通信数据封装与操作           BinaryInputArchive& BinaryOutputArchive底层通信数据封装与操作     BinaryInputArchiv ...

  6. SHELL编写NGINX服务控制脚本

    使用源码包安装的Nginx没办法使用"service nginx start"或"/etc/init.d/nginx start"进行操作和控制,所以写了以下的 ...

  7. Day11-协程/异步IO/RabbitMQ

    协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程:协程是一种用户态的轻量级线程. 协程拥有自己的寄存器上下文和栈.协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候 ...

  8. windows bat批处理语法简析

    第一节先介绍windows批处理.这个起源于跟旁边同事学习在windows用命令行办公,渐渐地有些批处理功能就需要了,于是专门抽出了几天学习了一下.我认为文档最重要的功能是为了备忘,择取了很多文档的例 ...

  9. jQuery动画slideUp()不正常位移原因

    用jQuery写一个列表.当点击底部按钮时,列表中序号超过6的项目可以向下拉出或者向上收起. 用slideUp(),遇见一个问题.展开列表项会产生不正常位移,如下图所示.动画结束发生位移. 出现这个问 ...

  10. 11i和R12配置JAR包

    R11:$IAS_ORACLE_HOME/Apache/Jserv/etc/jserv.properties R12: 方法1:直接解压JAR包放到$JAVA_TOP下: 方法2:编辑:$ORA_CO ...