首页 » 随口说 » 正文

我对于redis得web应用场景

有学员这几天问我一个问题,大致是关于redis得应用在什么地方?

我就我的个人经验给大家总结和归纳以下:

我一般项目中会这么使用redis

1、存储新闻或者业务数据的行为指标?

  啥叫叫行为指标?就是譬如新闻得点击量、评论数、用户点赞数, 到了晚上或者某个特定时间,我在服务器上写的一个定时程序就会开始启动(一般是用python写一个脚本,利用linux任务,求懂,不高兴解释太多)默默的含着泪调用redis里面的数据,然后疯狗一样的计算新闻的热度。最后生产一个排行榜。

2、缓存大量小容量文件。

 譬如有些栏目的缓存、配置文件、sql文件。有的同学会问,为啥不直接生产一个静态文件呢?我答:如果是分布式系统,用IO文件的方式烦死你。所以我会把这些零碎的小文件一下子加载到redis里。 由于redis支持主从同步,所以不用担心某台服务器突然去世而丢失数据

3、替代mongodb

说实话我不太喜欢mongodb.么有为什么。如果我要做一个无限级回复的评论功能,那么我会采用redis来搞定这种key value存储。很是方便。万一出现问题直接登上ssh 用redis客户端啪啪啪的就改好了。

4、作为队列

这个不解释了。用redis的list和set操作,非常方便的完成一个queues功能。请大家自行到github上搜索各种使用redis实现的queues。直接拿来主义。

最后,redis其实还有很多地方可以使用,大家有兴趣可以发掘和研究。但是有一点,redis不可以代替关系形数据库。如果你把redis当作mysql来用,那么我就要打你屁屁了。

发表评论