Redis应用场景记录

首先了解一下什么是redis,redis是一个key-value存储系统,支持存储的value的类型包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

当然,redis与其他NoSql的最大不同,就是能够设置超时时间,很多场景都是通过这个来实现的,下面将介绍我知道的几个场景,后续如果有其他的也会补充进来。

热点数据缓存

由于redis访问速度块、支持的数据类型比较丰富,所以redis很适合用来存储热点数据。将关系型数据库中查询频繁的,又不会经常更新的数据用redis缓存起来,以达到快速查询的效果。当然,具体要缓存的数据,需要结合业务进行判断。

举例:系统配置

限时业务

上面说过,redis能够设置超时时间,我们可以通过这个特性来实现限时业务。使用expire命令设置一个键的生存时间,到时间后redis会删除它。

举例:手机验证码,Cookie存储,优惠活动信息

排行榜业务

其实这个业务就是上面两个业务的糅合,由于榜单需要统计得出结果,如果将统计结果存到redis中,同时有些榜单具有时效型,我们可以设置超时。

举例:商品销售榜,店铺日点击榜

计数器业务

有些业务需要通过计数器来实现特殊的功能,统计或者限制,通过redis也能实现。

举例:秒杀活动,统计网站日访问量,限制一个手机号发多少条短信,限制一个接口一分钟多少次请求,限制一个接口一天调用多少次

分布式业务

在分布式系统中,redis能作为一个中间数据中心进行使用,以达到各系统数据的一致。

举例:session共享,分布式锁,分布式序列号的生成

猜你喜欢

转载自blog.csdn.net/zhangjian8641/article/details/108483225