该文将从Redis的角度来总结几种页面访问统计,这里的页面统计是针对某一个具体的页面进行每天的数量统计,后面文章内容涉及到的page_id指的就是页面的独立ID,每一个页面的ID都是不重复的。演示代码使用Laravel5.8版本实现。具体代码可以参考https://gitee.com/bruce_qiq/laravel-design.git。
页面总访问数量,统计了每个页面的总访问数量,不排除重复用户重复访问的情况,只要页面被访问就需要统计。
主要的实现思路是,给每一个页面划分一个ID,叫做page_id。我们使用字符串类型进行数量统计。
// 1. 实现某个页面访问统计
// url:$http/api/redis/demo1?page_id=1
public function demo1()
{
$pageId = $this->request['page_id'];
echo Redis::connection()->incrby('page:number:' . date('Y-m-d') . ':' . $pageId, 1);
}
页面独立访问用户,是针对某个具体的用户来进行数据统计。例如,有一个页面的page_id是1,此时用户的ID也是1,这时候就需要对page_id为1的数据进行缓存,并且将用户ID为1的数据添加到对应的缓存中。
下面使用set、bitmap、hyperLogLog来实现。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。