第03篇_Redis

第01章_Redis快速入门

第一节 Redis简介

1.什么是Redis?

Redis(https://redis.io/)是一款C语言开发的高性能键值存储数据库,遵守BSD开源协议。

扩展

  1. Redis中文网:http://www.redis.net.cn/
  2. 官方提供测试数据,50个并发执行100000个请求,读的速度是110000次/s,写的速度是81000次/s。

 

2. Windows安装

 

3. Linux安装

 

4. 图形客户端

 

 

5. 配置选项

 

 

第二节 基础命令

1. 连接Redis

 

2. 运行信息

 

3. key基本操作

 

 

第三节 数据类型

1. 基本数据类型

注意:

  1. String类型的value最大支持512M,单个set和list最大存储 2^32-1 个键值对(40多亿)。
  2. list可存储重复元素,set不可以存储重复元素,sortedset不允许重复元素,且元素通过分数排序。

 

2. 高级数据类型

 

 

第四节 高级特性

1. 发布订阅

注意

  1. 必须先订阅后发布,订阅某个通道,并不能收到该通道之前已发布的消息。

 

2. 事务

Redis的事务可以一次执行多个命令,它可以保证:

 

3. 持久化

 

4. 备份恢复

 

 

第五节 Java客户端

1. Jedis

1) 引入依赖

 

2) 连接Redis

 

3) 数据存取

 

4) 其它命令

 

5) Jedis连接池

注意:

  1. Jedis连接使用完毕后,必须调用jedis.close();归还连接。

 

2. RedisTemplate

1) 引入依赖

 

2) 注入StringRedisTemplate使用

 

3) 注入RedisTemplate使用

RedisTemplate允许你以Java对象的形式存取数据。

但其默认采用JDK序列化机制,阅读能力差,而且占用空间大,一般需要人为指定序列化方式:

 

 

第六节 其它

1. 脚本

Redis 使用 Lua 解释器来执行脚本,可参考:https://www.redis.net.cn/tutorial/3516.html

 

2. 管道

Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。这意味着通常情况下一个请求会遵循以下步骤:

Redis 管道技术可以在服务端未响应时,客户端可以继续向服务端发送请求,并最终一次性读取所有服务端的响应。

这可以显著的改善往返时延,提提高Redis的性能。

 

3. 性能测试