📜  什么是 redis (1)

📅  最后修改于: 2023-12-03 15:06:25.025000             🧑  作者: Mango

什么是 Redis

简介

Redis 是一个开源的内存数据结构存储系统,可以用作数据库、缓存和消息代理。它支持多种数据结构,如 字符串(string),哈希(hash),列表(list),集合(set),有序集合(sorted set)等。

Redis 有以下特点:

  • 高性能:Redis 是内存高速数据结构存储系统,读写速度非常快。
  • 可扩展性:Redis 可以通过集群或主从(slave)模式进行扩展,支持多种数据结构和多种操作。
  • 持久化:Redis 支持数据持久化,可以将数据保存到磁盘上,即使 Redis 服务重启也不会丢失数据。
  • 多语言支持:Redis 支持多种编程语言,如 Java、Python、Go 等。
安装
Ubuntu 安装
$ sudo apt-get install redis-server
macOS 安装
$ brew install redis
使用
连接 Redis

Redis 的默认端口号是 6379,可以使用 redis-cli 命令连接 Redis:

$ redis-cli
127.0.0.1:6379>
存储数据

Redis 支持多种数据结构,可以使用 SET、GET、HSET 等命令进行数据操作。

# 存储字符串
127.0.0.1:6379> SET name "Redis"
OK

# 获取字符串
127.0.0.1:6379> GET name
"Redis"

# 存储哈希
127.0.0.1:6379> HSET user id 1 name "Alice"
(integer) 1

# 获取哈希
127.0.0.1:6379> HGET user name
"Alice"
过期时间

Redis 可以设置数据的过期时间,过期后数据会自动删除。

# 设置过期时间为10秒
127.0.0.1:6379> SET key "value" EX 10
OK

# 查询剩余时间(单位:秒)
127.0.0.1:6379> TTL key
(integer) 8  # 表示还有8秒过期
发布订阅

Redis 支持发布订阅模式,可以让多个客户端通过 channels 进行消息的发布和接收。

# 客户端1 订阅 channel1
127.0.0.1:6379> SUBSCRIBE channel1
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "channel1"
3) (integer) 1

# 客户端2 发布信息到 channel1
127.0.0.1:6379> PUBLISH channel1 "message"
(integer) 1

# 客户端1 收到信息:"message"
1) "message"
2) "message"
总结

Redis 是一款高性能、可扩展的内存数据结构存储系统,支持多种数据结构和多种操作,可以用作数据库、缓存和消息代理。通过易于使用的命令行接口,可以快速实现数据存储和操作,是 Web 应用程序开发中的重要工具之一。