记一次实现统计访问量最高文章的功能
2017-09-05 22:16
351 查看
最近在公司做了一个新的需求:统计上周某几个系列文章中,阅读量最大的6篇文章。本来这些统计的功能,是要去找专门的统计,比如百度统计、友盟、谷歌等,但是我只有一天的开发时间,去研究第三方的统计指定某类文章的实现和接入,想了想,还是自己动手来实现来的快。
自己来实现的话,我想了想方案,应该是Redis+DB+定时任务,其中,redis做两件事情:每次点击统计次数++、存储上周阅读量最多的6篇文章;DB是作为数据的备份(redis突然GG了)和防止需求变更(比如,斯比的产品突发奇想把上周的阅读量最大的6篇文章,改为上两周的阅读量最大的6篇文章,或者是一个月、一个季度的,这样的话,以前统计的数据还是在的);定时任务,就是每周的凌晨把redis中文章的count写入数据库再归零,然后把新版的“上周阅读量的6篇文章”更新到缓存。
其中,使用到的技术和疑难点呢,貌似没有,只有JRedis的模糊查询我之前没使用过(使用的都是放字符串或者list,哈哈)、定时任务就使用的spring Quartz吧。一切都准备好了,等明天去公司在去编码吧!
下面附上redis的模糊匹配
说明:返回与指定模式相匹配的所用的keys。
该命令所支持的匹配模式如下:
(1)?:用于匹配单个字符。例如,h?llo可以匹配hello、hallo和hxllo等;
(2)*:用于匹配零个或者多个字符。例如,h*llo可以匹配hllo和heeeello等;
(3)[]:可以用来指定模式的选择区间。例如h[ae]llo可以匹配hello和hallo,但是不能匹配hillo。
同时,可以使用“/”符号来转义特殊的字符
在java里Jedis jedis = new Jedis("10.110.20.152", 6379);
Set<String> set = jedis.keys("china:shandong*");
for (String key : set) {
System.out.println(key);
}Tips:
这里使用到了Keys,很烂的主意,因为在获取的时候会造成阻塞。。。建议使用scan
Jedis scan及其count的值
自己来实现的话,我想了想方案,应该是Redis+DB+定时任务,其中,redis做两件事情:每次点击统计次数++、存储上周阅读量最多的6篇文章;DB是作为数据的备份(redis突然GG了)和防止需求变更(比如,斯比的产品突发奇想把上周的阅读量最大的6篇文章,改为上两周的阅读量最大的6篇文章,或者是一个月、一个季度的,这样的话,以前统计的数据还是在的);定时任务,就是每周的凌晨把redis中文章的count写入数据库再归零,然后把新版的“上周阅读量的6篇文章”更新到缓存。
其中,使用到的技术和疑难点呢,貌似没有,只有JRedis的模糊查询我之前没使用过(使用的都是放字符串或者list,哈哈)、定时任务就使用的spring Quartz吧。一切都准备好了,等明天去公司在去编码吧!
下面附上redis的模糊匹配
Redis 模糊匹配 SearchKeys
语法:KEYS pattern说明:返回与指定模式相匹配的所用的keys。
该命令所支持的匹配模式如下:
(1)?:用于匹配单个字符。例如,h?llo可以匹配hello、hallo和hxllo等;
(2)*:用于匹配零个或者多个字符。例如,h*llo可以匹配hllo和heeeello等;
(3)[]:可以用来指定模式的选择区间。例如h[ae]llo可以匹配hello和hallo,但是不能匹配hillo。
同时,可以使用“/”符号来转义特殊的字符
在java里Jedis jedis = new Jedis("10.110.20.152", 6379);
Set<String> set = jedis.keys("china:shandong*");
for (String key : set) {
System.out.println(key);
}Tips:
这里使用到了Keys,很烂的主意,因为在获取的时候会造成阻塞。。。建议使用scan
Jedis scan及其count的值
相关文章推荐
- WCM实现交互功能-4-访问量统计
- WordPress非插件版post_view实现文章点击量统计功能
- Spring Boot入门(12)实现页面访问量统计功能
- 代码实现WordPress文章浏览次数统计功能
- 网站访问量统计功能的实现
- 用代码实现为WordPress文章添加浏览次数(views)统计功能
- node学习笔记(五)网站访问量统计功能实现
- 使用第三方应用友盟实现网站访问量统计功能
- Python实现统计给定字符串中重复模式最高子串功能示例
- 调用WordPress函数统计文章访问量及PHP原生计数器的实现
- dede 实现栏目文章的统计功能
- 调用WordPress函数统计文章访问量及PHP原生计数器的实现
- Ajax实现对静态页面的文章访问统计功能示例
- 怎样在网站中实现统计访问量的功能
- RIA技术下实现网站访问量统计功能
- C语言实现的统计php代码行数功能源码(支持文件夹、多目录)
- Java 中实现文章单词,标点的统计办法。
- PHP实现的统计数据功能详解