11Web应用场景下使用简介

下面列出11个Web应用场景。在这些情况下,我们可以充分利用Redis的功能,大大提高工作效率。

1。显示主页上的最新项目列表

Redis使用内存缓存的基础,这是非常fast.lpush用于插入内容的ID,这是存储在列表header.ltrim关键字是用来限制列表中的项数达到5000。如果由用户需求超过缓存容量检索的数据量,它要发送请求到数据库。

2。删除和过滤

如果一篇文章被删除,你可以使用lrem删除它从缓存。

三.排名及相关问题

领导委员会是根据得分排序,可以直接实现该功能Zadd命令,而zrevrange命令可以用来获得前100名的用户根据评分。Zrank可以得到用户的排名,这是非常直接和容易操作。

4。通过用户投票和时间排序

这就像Reddit列表,和分数将在time.lpush、LTrim命令改变使用添加文章列表。后台任务来获得列表和重新计算的排序列表,和Zadd命令是用来填补生成列表中的新秩序。列表可以很很快,即使是重仓的网站。

5。过期项目的处理

Unix时间作为关键字来保持列表可以按时间排序,current_time和time_to_live完成寻找过时的项目任务艰巨任务使用的另一个背景zrange搜索…积分查询和删除过时的条目。

6。计数

各种数据统计的应用是非常广泛的,例如,当你想知道当阻止的IP地址,incrby命令可以很容易地通过增加原子的数目。捷先是用来重置计数器,和过期的属性是用来确定一个关键词的时候应该删除。

7。特定时间的具体项目

这是一个特殊的访客的问题,这可以通过使用SADD命令为每个页面view.sadd解决不增加现有成员集合。

8。实时分析正在发生,用于数据统计和防止垃圾邮件等。

使用redis原语命令,它是更容易实现垃圾邮件过滤系统或其他实时跟踪系统。

9、酒吧/子

它在保持数据更新用户的映射是系统中的一个共同的任务。Redis的酒吧/子函数使用订阅,退订,并发布命令,使它更容易。

10。队列

在目前的规划,团队随处可见。此外的push和pop类型的命令,Redis有阻塞队列的命令,允许一个程序被另一个程序添加到队列时生效。你也可以做一些更有趣的东西,如用旋转更新RSS队列。

11。缓存

Redis的缓存使用相同的方式缓存。

网络应用不能进行模型战。它更是不可想象的看到这些Redis的原始命令,虽然简单但功能强大,并把他们结合起来。当然,你可以编写代码来执行所有这些操作,但redis是显然更容易实现。