Redis典型应用场景

Redis下一小节:1-14 Redis三种启动方式介绍

Redis典型应用场景

Redis典型应用场景

(1)缓存系统

Redis典型应用场景_第1张图片

【1】表示客户端发请求到App Server(Apache or Nginx代理服务器)

【2】表示App Server请求Redis缓存数据库,如果Redis缓存数据库有值,则直接执行步骤【3.1】返回,否则执行【3.2】请求Storage(Mysql、Oracle、DB2等数据库)

【3.1】表示Redis有数据返回给Apache or Nginx代理服务器)

【3.2】表示Redis请求Storage(Mysql、Oracle、DB2等数据库)

【4】表示Storage(Mysql、Oracle、DB2等数据库)返回数据给Redis,然后Redis重新存一份数据

【5】表示Storage(Mysql、Oracle、DB2等数据库)直接返回Apache or Nginx代理服务器)

(2)计数器

Redis典型应用场景_第2张图片

因为Redis是单线程的,所以Redis使用INCR计数命令是原子操作,不会出现并发问题,可以防止刷单。

(3)消息队列系统

Redis典型应用场景_第3张图片

目前市面上比较成熟的MQ系统:ActiveMQ、Kafka、RabbitMQ、RocketMQ

 

因为Redis消息队列功能比较简单,所以一般简单消息队列使用场景可以使用Redis,但是如果场景复杂,建议还是使用市面上成熟的MQ系统。

(4)排行榜

Redis典型应用场景_第4张图片

Redis提供了Sorted Set数据结构可以很好的实现排行榜功能

(5)社交网络

Redis典型应用场景_第5张图片

Redis与社交网络是天然吻合的,像很多社交媒体的功能都可以使用Redis来实现,例如:粉丝数、关注数、共同关注、时间轴列表

Redis Set数据结构可以实现这些功能。

Redis Set数据结构,取两个集合的交集就可以实现“共同关注功能”

Redis Sorted Set数据结构,可以实现时间轴列表功能,Sorted中score可以以时间作为排序条件,例如:奖池奖品按时间分布。

(6)实时系统

Redis典型应用场景_第6张图片

Redis使用Bitmap位图来实现布隆过滤功能,例如:垃圾邮件过滤实时处理。

 

你可能感兴趣的:(Redis)