数据类型-set 实现网站访问量统计 | 学习笔记

简介: 快速学习数据类型-set 实现网站访问量统计

开发者学堂课程【Redis 入门到精通(基础篇):数据类型-set 实现网站访问量统计】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/764/detail/13388


数据类型-set 实现网站访问量统计

 

内容介绍

一、Set 类型应用场景

二、Tip11

 

一、Set 类型应用场景

业务场景

公司对旗下新的网站做推广,统计网站的PV(访问量),UV(独立访客),IP(独立IP)。

PV:网站被访问次数,可通过刷新页面提高访问量

UV:网站被不同用户访问的次数,可通过cookie统计访问量,相同用户切换IP地址,UV不变

IP:网站被不同IP地址访问的总次数,可通过IP地址统计访问量,相同IP不同用户访问,IP不变

解决方案
●利用set集合的数据去重特征,记录各种访问数据

●建立string类型数据,利用incr统计日访问量 (PV)

●建立set模型,记录不同cookie数量(UV)
●建立set模型,记录不同IP数量(IP)

 

二、Tip11

Redis 应用于同类型数据模型的快速去重

网站的访问量问题,很多公司都会制作自己的网站,很多更偏向于主流网站建设,相比较一些加工类型的网站可能不重要,但是对于互联网公司,主打产品就是网站,对于一个网站,被用户访问量就成为一个重要的衡量指标,主要衡量的指标是PV,UV,IP,如果说这三类都比较好的话,

那么网站就会有一个比较好的网站运营效果,针对这些数据如何去做统计,对于PV来说,指的是单次访问次数,也就是点开一个页面或者打开一个页面就算一次访问次数,这个是网站内部的,而UV指的是同一个用户多次访问,只记录一次,使用cookie 进行识别,还有就是网站被不同IP地址访问的总访问次数,比如说一个网吧,对外呈现的是一个IP地址,所有人访问这个网站,但是只记录一次。

这三个怎样统计呢,利用我们的数据模型特征就可以实现,PV的访问我们使用string类型就可以实现,利用计数器就可以完成;

set模型进行记录 cookie 和 IP,我们可以使用set模型做一个重复性的过滤。

接下来进行操作,sadd ips 1.2.3.4,回车,得到一个独立IP,sadd ips 2.3.4.5,回车,得到第二个独立IP,相同的IP再次访问,发现进不来数据,最后进行查看所有的IP,scard ips,得到访问IP为2,一共有两个独立IP访问,对于 cookie 也是一样的,对于前面IP地址如何得出那就是程序需要解决的问题,不是我们 redis 关心的问题,利用这种形式就可以做数据的统计,这就是我们 tip11 的解决方案。

我们利用 redis 的 set 模型就可以去做同类型数据的一个快速去重,这个跟之前的权限那个还不太一样,完全就是就是运用数据特征做数据过滤用的。

相关文章
|
存储 JSON NoSQL
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
这篇文章是关于Redis基本数据结构的学习笔记,包括了String、Hash、Set、List和SortedSet的介绍和常用命令。文章解释了每种数据结构的特点和使用场景,并通过命令示例演示了如何在Redis中操作这些数据结构。此外,还提供了一些练习示例,帮助读者更好地理解和应用这些数据结构。
redis基本数据结构(String,Hash,Set,List,SortedSet)【学习笔记】
|
存储 NoSQL 算法
Redis6入门到实战------ 三、常用五大数据类型(列表(List)、集合(Set)、哈希(Hash)、Zset(sorted set))
这是关于Redis 6入门到实战的文章,具体内容涉及Redis的五大数据类型:列表(List)、集合(Set)、哈希(Hash)、有序集合(Zset(sorted set))。文章详细介绍了这些数据类型的特点、常用命令以及它们背后的数据结构。如果您有任何关于Redis的具体问题或需要进一步的帮助,请随时告诉我。
|
NoSQL Redis
Redis set数据类型命令使用及应用场景使用总结
Redis set数据类型命令使用及应用场景使用总结
187 1
|
存储 NoSQL Redis
无序集合的利器:深入了解 Redis 的 Set 数据类型
在现代的应用程序中,对于处理独特值、快速判断成员关系等需求,无序集合是一种重要的数据结构。Redis,作为一款高性能的内存数据库,提供了多种数据类型来满足不同的需求。在本文中,我们将着重介绍 Redis 的 Set 数据类型,探讨其特性、用法以及在实际应用中的优势。
391 0
|
消息中间件 JSON NoSQL
Redis深度解析:核心数据类型之hash、list、set
Redis深度解析:核心数据类型之hash、list、set
|
测试技术 索引 Python
Python接口自动化测试框架(基础篇)-- 常用数据类型list&set()
本文介绍了Python中list和set两种数据类型的使用,包括它们的创建、取值、增删改查操作、排序以及内置函数的使用,还探讨了list的比较函数和set的快速去重功能。
292 0
|
存储 Java Redis
redis-学习笔记(Jedis set 简单命令)
redis-学习笔记(Jedis set 简单命令)
166 1
|
NoSQL Java Redis
redis-学习笔记(string , hash , list , set , zset 前置知识)
redis-学习笔记(string , hash , list , set , zset 前置知识)
174 0
redis-学习笔记(string , hash , list , set , zset 前置知识)
|
存储 C++ 容器
【C++】学习笔记——map和set
【C++】学习笔记——map和set
143 0
|
搜索推荐
redis-学习笔记(set)
redis-学习笔记(set)
132 0