当前位置: 首页> 教育> 培训 > 世界著名办公室设计_百度网址怎么写_谷歌广告平台_杭州seo排名费用

世界著名办公室设计_百度网址怎么写_谷歌广告平台_杭州seo排名费用

时间:2025/7/12 2:40:12来源:https://blog.csdn.net/2301_80227523/article/details/146963127 浏览次数:0次
世界著名办公室设计_百度网址怎么写_谷歌广告平台_杭州seo排名费用

1. Redis 介绍

Redis(Remote Dictionary Server)是一个 基于内存的高性能 Key-Value 存储数据库,它的特点包括:

  • 高性能:所有数据存储在内存中,读写速度极快(百万级 QPS)。

  • 支持多种数据结构:字符串、哈希、列表、集合、有序集合等。

  • 持久化:支持 RDB(快照)、AOF(日志)持久化方案。

  • 支持分布式:可用作 缓存、消息队列、分布式锁、Session 共享 等。


2. Redis 安装与启动

(1)Windows 安装(WSL2 环境)

sudo apt update
sudo apt install redis

启动 Redis:

redis-server

验证 Redis 是否运行:

redis-cli ping  # 返回 "PONG" 说明运行正常

(2)Linux/Mac 安装

# 下载并编译 Redis(适用于 Linux)
wget http://download.redis.io/redis-stable.tar.gz
tar xzf redis-stable.tar.gz
cd redis-stable
make

启动 Redis:

src/redis-server

连接 Redis:

src/redis-cli

3. Redis 基本命令

Redis 是 Key-Value 数据库,所有数据都存储为键值对。

(1)键(Key)操作

SET name "Alice"   # 设置键值
GET name           # 获取键值
DEL name           # 删除键
EXISTS name        # 检查键是否存在
EXPIRE name 60     # 设置 60 秒过期时间
TTL name           # 查看剩余存活时间(Time To Live)

4. Redis 数据结构

Redis 提供多种数据结构,分别适用于不同业务场景。

(1)字符串(String)

适用于 缓存、计数器

SET counter 100       # 设置初始值
INCR counter          # 自增(+1)
DECR counter          # 自减(-1)
INCRBY counter 5      # 增加 5

应用场景

  • 计数(网站访问量)

  • 用户会话(Session)

  • 短链生成(短网址)


(2)哈希(Hash)

适用于存储 对象(用户信息、订单)

HSET user:1001 name "Tom"
HGET user:1001 name
HGETALL user:1001   # 获取所有字段
HDEL user:1001 name # 删除字段

应用场景

  • 存储用户信息

  • 存储商品信息


(3)列表(List)

适用于 队列、消息队列、社交动态

LPUSH queue "task1"
RPUSH queue "task2"
LPOP queue  # 从左侧取出
RPOP queue  # 从右侧取出
LRANGE queue 0 -1  # 获取全部元素

应用场景

  • 任务队列(异步任务)

  • 消息队列(MQ)

  • 评论列表(社交)


(4)集合(Set)

适用于 去重、好友推荐

SADD fruits "apple" "banana" "orange"
SMEMBERS fruits  # 获取所有元素
SISMEMBER fruits "apple"  # 检查是否存在
SREM fruits "apple"  # 删除元素

应用场景

  • 交集、并集、差集

  • 黑名单(不重复)

  • 标签系统


(5)有序集合(Sorted Set)

适用于 排行榜、积分

ZADD scores 100 "Alice"
ZADD scores 200 "Bob"
ZRANGE scores 0 -1 WITHSCORES  # 获取所有元素及分数
ZRANK scores "Alice"  # 获取排名

应用场景

  • 排行榜(游戏、热点新闻)

  • 计分系统(点赞、评论)


5. Redis 进阶功能

(1)事务

MULTI
SET key1 "value1"
SET key2 "value2"
EXEC  # 执行事务

注意:

  • Redis 事务 不支持回滚,如果某条命令失败,其余仍然会执行。


(2)分布式锁

分布式系统需要防止 超卖、重复提交,Redis 可实现分布式锁:

SET lock "1" EX 10 NX  # 设置锁,10秒自动释放(EX = 过期时间,NX = 只在不存在时设置)

应用场景

  • 防止超卖

  • 分布式任务调度


(3)消息队列(Pub/Sub)

Redis 支持 发布/订阅 模式:

SUBSCRIBE mychannel   # 订阅频道
PUBLISH mychannel "hello world"  # 发布消息

应用场景

  • 消息通知

  • 即时聊天


6. Redis Java 代码示例(Spring Boot)

(1)引入 Redis 依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

(2)Spring Boot 配置 Redis

spring:redis:host: localhostport: 6379timeout: 5000ms

(3)Redis 工具类

@Component
public class RedisUtil {@Autowiredprivate StringRedisTemplate redisTemplate;public void set(String key, String value) {redisTemplate.opsForValue().set(key, value);}public String get(String key) {return redisTemplate.opsForValue().get(key);}public void delete(String key) {redisTemplate.delete(key);}
}

(4)使用 Redis

@Autowired
private RedisUtil redisUtil;public void testRedis() {redisUtil.set("username", "Alice");String name = redisUtil.get("username");System.out.println(name);  // 输出 "Alice"
}

7. Redis 适用场景

场景适用 Redis 数据结构说明
缓存String / Hash低延迟缓存,减少数据库查询
排行榜Sorted Set游戏积分排行榜
分布式锁String (SET NX)防止超卖,秒杀系统
消息队列List / PubSub异步任务
社交推荐Set / Sorted Set关注、好友推荐

8. 总结

  • Redis 是 高性能 NoSQL 数据库,支持 五种核心数据结构

  • 适用于 缓存、排行榜、消息队列、分布式锁 等场景。

  • Spring Boot 集成 Redis 方便快捷,适用于 高并发分布式系统

关键字:世界著名办公室设计_百度网址怎么写_谷歌广告平台_杭州seo排名费用

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: