Redis在APP中的应用

时间:2024-05-03 10:36:14

前言

redis 是内存型数据库,读取data速度远快于mysql和sqlserver,如果将APP中列表信息或者一些常被访问的信息转存至内存上,然后APP通过redis读取内存上的数据,那么APP的用户体验也会提高。

注意

1.转存数据不宜超过内存的最大值,否则会导致系统的性能下降

2.注意垃圾回收,设计时多考虑数据的生命周期。

REDIS KEY

这里只简单介绍下Redis的key:

 //向 key 赋值 value
SET key value
//用于删除key
DEL key
//用于检查key是否存在
EXISTS key
//给key 设置一个声明周期
EXPIRE key seconds
//查找所有符合pattern的key
KEYS pattern
//将当前key移至绑定的数据库db
MOVE key db
//移除key的生命周期
PERSIST key
//返回key的剩余时间 TTL time to live
PTTL key
//随机返回一个key
RANDOMKEY
//将key重新命名为newkey
RENAME key newkey
//返回key的类型
TYPE key

场景

场景一:DB与REDIS同步

我们这里以Mysql为例;

方法一:后端代码 insert / update / delete mysql时, 清空redis , 然后再将mysql中相关数据更新至redis中。

方法二:mysql 与 redis 同步,多使用 mysql udf redis 方法。

方法二性能远优于方法一,但是难度也超过方法一。

场景二:后台更新

如同cms框架一样,每更新一次信息就要生成相关的静态页面;

每一次更新DB,然后 renew redis ;这种方法的好处是 redis 不大会出现错误,也很容易监控redis的体积,方便多层监管,缺点就是并不real time和多出几步操作。