6、Redis-KV设计、全局命令和安全性

目录

一、value设计

二、Key设计

三、全局命令------针对所有key

四、安全性


一、value设计

①是否需要排序?需要:Zset

②需要缓存的数据是单个值还是多个值?

  • 单个值:简单值---String;对象值---Hash
  • 多个值:允许重复---List;不允许重复---Set

另一种方案:需要排序使用Zset,否则一律使用String【所有对象都转换为json格式字符串存储


二、Key设计

1、唯一性:同一个key,后续缓存的会覆盖之前缓存的。因此,通常使用数据主键作为key。

2、可读性。可读性前缀。

3、灵活性。一个主键不能明确表达意思时,可以使用联合主键。

4、时效性。设置过期时间。


三、全局命令------针对所有key

|--------------------|-----------------------------------------------------------------------------------------------------------------------|
| 格式 | 含义 |
| keys pattern | 按照pattern匹配规则,列出redis中所有匹配的key 如: ①keys *:获取所有key【不建议,Redis是单线程,这样做会比较耗时】 ②keys employee_id*:获取所有前缀为employee_id的key |
| exists key | 判断key是否存在 |
| expire key seconds | 给现有的key设置过期时间 |
| persist key | 取消key的过期时间 |
| select index | 切换数据库【默认16个数据库,因此index为0-15】 |
| move key db_index | 将当前数据库中的key移动到另一个数据库db_index,如果db_index已经存在同名key则移动失败 |
| randomkey | 从当前数据库中随机返回一个 key |
| rename key newkey | 对key重命名,key不存在则会报错 |
| echo message | 打印字符串message |
| dbsize | 获取当前数据库中key的数量 |
| info | 获取redis相关信息 |
| config get * | 查看redis配置信息 |
| flushdb | 清空当前数据库 |
| flushall | 清空所有数据库 |


四、安全性

由于Redis速度很快,因此密码可能被暴力破解。

这是设置Redis密码的方式:redis设置密码并修改查看的几种方式 - 掘金 (juejin.cn)

相关推荐
聚美智数7 分钟前
黄历查询-运势查询-国际法定节假日查询-API接口介绍
android·java·数据库
酷炫的水壶37 分钟前
使用memc-nginx和srcache-nginx模块构建高效透明的缓存机制
运维·nginx·缓存
夜影风2 小时前
Redis集群创建时出现“Node xxx.xxx is not empty”问题处理
数据库·redis·缓存
utf8mb4安全女神2 小时前
【Redis数据库】哨兵集群/redis集群/安装配置/主从复制/数据持久化操作/数据结构/安全限制/PHP redis/
linux·服务器·数据结构·数据库·redis·缓存
lzz的编码时刻3 小时前
Liquibase 入门实战教程
数据库·运维开发
Zk.Sun3 小时前
Linux设置触屏双击距离容差
linux·运维·数据库
山峰哥4 小时前
数据库工程:Explain执行计划对比实战指南‌
数据库·sql·oracle·深度优先·宽度优先
crisps_ww4 小时前
自媒体运营分析-BI可视化仪表盘制作
数据库
xto_coo4 小时前
锡膏存储方法有哪些?
缓存
Geek-Chow4 小时前
微服务认证与授权:01 — 概念
java·前端·数据库