Redis简介
Redis(Remote Dictionary Server)是一个开源的高性能键值对(Key-Value)数据库。它通常用作数据结构服务器,因为除了基本的字符串键值对存储之外,它还支持更复杂的数据结构,如哈希、列表、集合、有序集合、位图、超日志和地理空间索引等。
以下是Redis的一些关键特性和优势:
-
内存存储:Redis将所有数据存储在内存中,这使得它能够提供极高的读写速度。
-
持久化:虽然Redis是内存数据库,但它提供了持久化功能,可以将内存中的数据保存到磁盘,以防系统故障导致数据丢失。
-
支持数据结构:Redis支持丰富的数据结构,包括字符串、列表、集合、有序集合、散列、位图、超日志和地理空间索引等。
-
原子操作:Redis的所有操作都是原子的,这意味着它们可以在并发环境下安全地执行,而不会出现竞态条件。
-
发布/订阅:Redis提供了发布/订阅功能,允许客户端订阅频道以接收消息,这对于实现消息系统非常有用。
-
事务:Redis支持事务,可以通过MULTI和EXEC命令将多个操作组合成一个事务执行。
-
Lua脚本:Redis允许用户使用Lua脚本在服务器端执行复杂的逻辑。
-
高可用:Redis提供了主从复制和哨兵系统来提高数据的可用性和容错能力。
-
分布式:Redis支持分布式数据存储,可以通过Redis Cluster实现数据的自动分片和高可用。
-
性能:Redis的性能非常高,可以处理大量的并发请求,是许多实时应用程序的理想选择。
-
简单易用:Redis有一个简单的客户端和服务器协议,客户端库丰富,易于使用。
-
灵活的过期策略:可以为键设置过期时间,支持灵活的过期策略。
springboot整合Redis的Maven依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
</dependencies>
application.yml配置
spring:
data:
redis:
#数据库索引
database: 0
#redis 服务器地址
host: 127.0.0.1
#redis 端口
port: 6379
#redis 密码 默认为空
password: