redis常用使用场景

1.将Redis用作消息队列

采用的当然是Redis的List数据结构,而实际上NoSQLFan之前还讨论过采用sorted sets结构来做带权重的消息队列的方法。

2.将Redis用作日志收集器

实际上还是一个队列,多个端点将日志信息写入Redis,然后一个worker统一将所有日志写到磁盘。

3.存储社交关系

比如将每个人的好友存在一个集合(set)中,这样求两个人的共同好友的操作,可能就只需要用求交集命令即可。

4.用作缓存层

用来做持久化存储的缓存,和Memcached一样,可以在持久化存储获取成功后将数据在Redis中进行缓存,我们知道,Redis的性能优于Memcached。

5.关于持久化

用作持久存储的时候,可以选择定时flush成rdb或开启aof日志的做法,具体选择哪一种,可以根据业务上可接受的数据可靠程度而定。

6.与MongoDB一起使用的问题

一 个提醒,在Bump早期,曾将Redis和MongoDB放在同一台机器,而由于Redis的单线程,常由于MongoDB对于CPU或磁盘IO的占用而 导致其某个过程(比如malloc或者写aof)执行时间过长,从而进一步导致其所有操作被阻塞并延迟,所以尽量不要将其用于可能被大量占用CPU或磁盘 IO,导致Redis工作线程被阻塞的场合。

猜你喜欢

转载自san-yun.iteye.com/blog/1809899