CN114138810B - 一种访问流量统计方法及系统 - Google Patents

一种访问流量统计方法及系统 Download PDF

Info

Publication number
CN114138810B
CN114138810B CN202210096975.3A CN202210096975A CN114138810B CN 114138810 B CN114138810 B CN 114138810B CN 202210096975 A CN202210096975 A CN 202210096975A CN 114138810 B CN114138810 B CN 114138810B
Authority
CN
China
Prior art keywords
access
amount
access amount
server
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210096975.3A
Other languages
English (en)
Other versions
CN114138810A (zh
Inventor
贺海丽
王映彤
郭杰
孙薇薇
徐婷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Travelsky Technology Co Ltd
Original Assignee
China Travelsky Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Travelsky Technology Co Ltd filed Critical China Travelsky Technology Co Ltd
Priority to CN202210096975.3A priority Critical patent/CN114138810B/zh
Publication of CN114138810A publication Critical patent/CN114138810A/zh
Application granted granted Critical
Publication of CN114138810B publication Critical patent/CN114138810B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computing Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种访问流量统计系统及方法,包括:访问流量统计设备、redis数据库和数据存储数据库,访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将本地访问量和实际访问量进行相加,得到在预定时间段内更新后的实际访问量,并将更新后的实际访问量发送给redis数据库,redis数据库将更新后的实际访问量和历史访问量进行相加,更新访问用户的总访问量,并将总访问量发送至数据存储数据库,数据存储数据库存储总访问量。利用访问流量统计设备和redis数据库的访问量叠加完成对于同一用户在不同的业务系统中的访问流量统计,可以全面统计一个用户在所有业务系统中的访问流量表现。

Description

一种访问流量统计方法及系统
技术领域
本申请涉及计算机领域,尤其涉及一种访问流量统计方法及系统。
背景技术
随着计算机技术的快速发展,为满足用户需求提供了具备各种功能的业务系统。但是由于不同的业务系统的开发时间不同,使得不同的业务系统存在较大差异,无法全面统计同一个用户在所有业务系统中的访问流量,不能对用户的访问行为进行有效的分析统计,从而无法进一步提升多个业务系统对用户的服务质量。
因此,当前存在不同的业务系统面对相同的用户,也很难有效完成对同一用户的访问流量统计,实现对用户访问的统一管理的问题。
发明内容
本申请实施例提供一种访问流量统计方法及系统,能够实现对于同一用户进行访问流量统计。
本申请实施例提供一种访问流量统计系统,所述系统包括:访问流量统计设备、redis数据库和数据存储数据库;
所述访问流量统计设备,用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,并将所述更新后的实际访问量发送给redis数据库;
所述redis数据库,用于接收所述更新后的实际访问量,将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量发送至所述数据存储数据库;
所述数据存储数据库,用于接收所述访问用户的总访问量,并进行存储。
本申请实施例提供一种访问流量统计方法,所述方法包括:
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量;
所述访问流量统计设备将所述更新后的实际访问量发送给redis数据库,以便所述redis数据库将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量存储至数据存储数据库。
本申请实施例提供一种访问流量统计系统,系统包括:访问流量统计设备、redis数据库和数据存储数据库,访问流量统计设备用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将本地访问量和访问流量统计设备缓存的实际访问量进行相加,得到在预定时间段内更新后的实际访问量,并将更新后的实际访问量发送给redis数据库,redis数据库用于接收更新后的实际访问量,将更新后的实际访问量和redis数据库缓存的历史访问量进行相加,更新访问用户的总访问量,并将总访问量发送至数据存储数据库,数据存储数据库用于接收访问用户的总访问量,并进行存储。也就是说,通过利用访问流量统计设备和redis数据库的访问量叠加完成对于同一用户在不同的业务系统中的访问流量统计,可以全面统计一个用户在所有业务系统中的访问流量表现,实现有效的分析统计。此外,利用访问流量统计设备和redis数据库处理用户在多个业务系统的访问量,避免了业务系统与数据存储数据库的直接高频交互带来的数据存储数据库性能较差的问题。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本申请实施例提供的一种访问流量统计系统的结构示意图;
图2为本申请实施例提供的另一种访问流量统计系统的结构示意图;
图3为本申请实施例提供的一种访问流量统计方法的流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
随着计算机技术的快速发展,为满足用户需求提供了具备各种功能的业务系统。尤其对于民航领域,由于业务场景众多,关联的业务系统也多种多样。但是由于不同的业务系统的开发时间不同,使得不同的业务系统存在较大差异,无法全面统计同一个用户在所有业务系统中的访问流量,不能对用户的访问行为进行有效的分析统计,从而无法进一步提升多个业务系统对用户的服务质量。
在进行访问流量统计时,需要将统计得到的访问量存储至数据库,但是若将业务系统的访问数据直接与数据库交互,高并发访问数据的查询或存储与数据库频繁交互,会造成访问流量统计的服务性能差,数据库压力大等一系列问题。
因此,当前存在不同的业务系统面对相同的用户,也很难有效完成对同一用户的访问流量统计,实现对用户访问的统一管理问题,还存在业务系统自身直接进行流量访问统计和直接与数据库进行高频交互带来的流量访问统计性能较差,数据库查询和存储压力较大的问题。
基于此,本申请实施例提供一种访问流量统计系统,系统包括:访问流量统计设备、redis数据库和数据存储数据库,访问流量统计设备用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将本地访问量和访问流量统计设备缓存的实际访问量进行相加,得到在预定时间段内更新后的实际访问量,并将更新后的实际访问量发送给redis数据库,redis数据库用于接收更新后的实际访问量,将更新后的实际访问量和redis数据库缓存的历史访问量进行相加,更新访问用户的总访问量,并将总访问量发送至数据存储数据库,数据存储数据库用于接收访问用户的总访问量,并进行存储。也就是说,通过利用访问流量统计设备和redis数据库的访问量叠加完成对于同一用户在不同的业务系统中的访问流量统计,可以全面统计一个用户在所有业务系统中的访问流量表现,实现有效的分析统计。此外,利用访问流量统计设备和redis数据库处理用户在多个业务系统的访问量,避免了业务系统与数据存储数据库的直接高频交互带来的数据存储数据库性能较差的问题。
参见图1,该图为本申请实施例提供的一种访问流量统计系统的结构示意图。
本实施例提供的访问流量统计系统100包括访问流量统计设备110、redis数据库120和数据存储数据库130。
在本申请的实施例中,访问流量统计设备110用于根据唯一标识key确定对应的访问用户在预定时间段内的本地访问量,将本地访问量和访问流量统计设备缓存的实际访问量进行相加,得到在预定时间段内更新后的实际访问量,并将更新后的实际访问量发送给redis数据库。
也就是说,访问流量统计设备110统计某一访问用户在预定时间段内对多个业务系统的本地访问量,而后将该预定时间段内的本地访问量与之前已经统计过的该访问用户的实际访问量进行叠加,得到更新后的实际访问量。
可以利用访问用户对应的唯一标识在多个业务系统中辨别不同的访问用户,即使同一访问用户访问不同的业务系统,该访问用户的唯一标识也不会改变,基于该唯一标识可以唯一的确定同一个访问用户,以便后续针对每一个访问用户统计该访问用户进行业务系统访问时的访问流量统计。
预定时间段可以预先进行设定,利于预定时间段可以是1天。
在本申请的实施例中,访问流量统计设备110可以是单独的服务器,即利用独立的服务器进行某一用户的多个业务系统访问的访问流量统计。访问流量统计设备110还可以包括终端设备111和服务器112,参考图2所示,为本申请实施例提供的另一种访问流量统计系统的结构示意图。
终端设备111中安装有客户端,该客户端用于提供访问流量统计服务。业务系统可以通过调用客户端的应用程序编程接口(Application Programming Interface,API),实现引入该客户端的访问流量统计服务。
客户端采取的是Google的CacheBuilder缓存,当缓存内容超过时间限制被回收,避免特意去创建定时任务删除缓存,提高内存利用率。当业务系统首次接入客户端时,调用配置接口配置该业务系统的单例客户端及缓存,对访问业务系统的访问用户利用唯一标识进行身份认证。当业务系统再次接入客户端时,调用限流接口,利用唯一标识对访问业务系统的访问用户进行访问流量统计和访问流量查询等服务。
也就是说,客户端可以根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将本地访问量发送至服务器并接收服务器发送的更新后的实际访问量。
客户端可以对访问用户在预定时间段内的本地访问量进行缓存,通过定时同步任务将缓存的本地访问量同步至服务器,以便服务器更新该访问用户的实际访问量。通过定时同步任务避免客户端缓存的数据与服务器缓存的数据的实时交互,降低服务器性能变差的概率。
在实际应用中,客户端除了缓存访问用户的本地访问量,还可以缓存访问用户的其他访问数据,例如是否允许访问、实际访问量和最大限流访问量等,也就是说,客户端可以缓存访问用户的总量限流缓存数据,其中总量限流缓存数据中的字段包括是否允许访问、实际访问量、本地访问量、最大限流访问量和唯一标识等。客户端可以缓存访问用户的总量限流缓存数据中的实际访问量、是否允许访问和最大限流访问量与服务器缓存的访问用户的总量限流缓存数据中的实际访问量、是否允许访问和最大限流访问量相同,这样能够实现当服务器出现问题无法工作时,业务系统也可以正常利用客户端,进行访问流量的统计和查询,保证访问流量数据的准确性。
在本申请的实施例中,当业务系统接入客户端之后,客户端还可以向业务系统反馈唯一标识对应的访问用户的限流查询结果,当业务系统利用限流接口接入客户端时,客户端利用访问用户的唯一标识,在客户端的缓存中查询是否具有该访问用户的总量限流缓存数据,若存在,则发送包括是否允许访问、实际访问量和最大限流访问量等字段的限流查询结果给业务系统。若在客户端的缓存中查询不到该访问用户的总量限流缓存数据,则返回业务系统该访问用户允许访问不做限制的限流查询结果。
在本申请的实施例中,服务器用于接收本地访问量,将本地访问量和服务器缓存的实际访问量进行相加,得到在预定时间段内更新后的实际访问量,将更新后的实际访问量发送给redis数据库和终端设备,并接收redis数据库发送的总访问量,利用总访问量更新服务器缓存的实际访问量。
也就是说,在客户端利用定时同步任务将缓存的本地访问量同步至服务器,以便服务器更新该访问用户的实际访问量,具体服务器可以利用访问用户的唯一标识确定在服务器中缓存的该访问用户的实际访问量,该实际访问量是访问用户的历史访问量,而后将客户端发送的本地访问量和服务器中缓存的实际访问量相加,得到更新后的实际访问量,将该更新后的实际访问量同步至redis数据库以及发送给终端设备。
服务器和客户端可以同样采取Google的CacheBuilder缓存,当缓存内容超过时间限制被回收。
在本申请的实施例中,客户端和服务器中缓存的除了本地访问量以外,还缓存了访问用户的其他访问数据,例如是否允许访问、实际访问量和最大限流访问量等,也就是说,客户端和服务器可以缓存访问用户的总量限流缓存数据,总量限流缓存数据包括本地访问量和其他访问数据。客户端可以向服务器发送唯一标识对应的访问用户的其他访问数据,并接收服务器发送的限流结果,限流结果中包括是否允许访问、实际访问量、唯一标识和最大限流访问量等字段,客户端可以根据该限流结果中包括的字段,更新唯一标识对应的访问用户的总量限流缓存数据,例如其他访问数据,以便客户端直接向业务系统提供最新的限流查询结果,保持数据的准确性。
在客户端向服务器定时发送包括唯一标识的其他访问数据时,服务器接收该其他访问数据,并根据该其他访问数据对唯一标识对应的访问用户的访问流量进行查询,得到限流结果,并将限流结果发送给客户端。
具体查询时,服务器根据该其他访问数据中的唯一标识,在服务器缓存的总量限流缓存数据中查询是否具有该访问用户的总量限流缓存数据,若存在,则直接向客户端返回限流结果,限流结果中的实际访问量是更新后的,以便客户端根据返回的限流结果更新缓存中的访问用户的总量限流缓存数据,若不存在,则根据该其他访问数据中的唯一标识创建新缓存对象,并且异步获取和更新创建的新缓存对象中的最大限流访问量,并将获取得到的最大限流访问量在服务器的缓存中进行更新,并将更新后的访问用户的总量限流缓存数据发送至客户端。
在异步获取和更新创建的新缓存对象中的最大限流访问量时,可以利用第一对应关系对唯一标识对应的访问用户的最大限流访问量进行查询,第一对应关系为唯一标识和最大限流访问量的对应关系,第一对应关系可以是键(key)值(value)对,唯一标识为key,最大限流访问量为value。
在本申请的实施例中,访问流量统计系统还可以包括配置模块,配置模块用于预先配置访问流量统计条件和访问流量限制条件,支持业务系统根据自身实际情况进行个性化限流规则定制,提供统一访问流量统计,同时实现多个业务系统之间同一访问用户的统一限流服务。配置模块预先配置的访问流量统计条件和访问流量限制条件中包括第一对应关系,即访问流量统计条件和访问流量限制条件中已经预先配置了访问用户的唯一标识和最大限流访问量的对应关系。
在启动服务器时,服务器会自动下载配置模块的配置规则文件到服务器的配置规则缓存中,配置规则文件中包括访问流量统计条件和访问流量限制条件,其中包括第一对应关系,即第一对应关系可以是服务器预先缓存的,以便后续根据第一对应关系快速查询唯一标识对应的最大限流访问量。
由于配置规则缓存中包括每个唯一标识的第一对应关系,因此缓存的数据量较大,在利用唯一标识查询对应的最大限流访问量时,若不是第一次查询该唯一标识,则可以预先在服务器的限流缓存关键字与配置规则关键字映射缓存中预先缓存该唯一标识,以降低每次都从配置规则缓存中查询唯一标识的次数,避免较长的查询时间和较低的查询效率。
也就是说,当服务器异步获取和更新创建的新缓存对象中的最大限流访问量时,查找限流缓存关键字与配置规则关键字映射缓存以及配置规则缓存中是否存在唯一标识的关键字与对应值value。
若存在关键字,value!=-1,将用对应值获取配置规则缓存中的最大限流访问量。
若存在关键字,value=-1,表示配置规则中不存在关键字的规则,直接返回最大限流访问量是-1。
若不存在关键字,则根据关键字去匹配配置规则缓存中的第一对应关系,若最终没有匹配到,将返回最大限流访问量是-1;若有匹配,将返回配置规则缓存中的第一对应关系的最大限流访问量。
在本申请的实施例中,在服务器将缓存的包括访问用户的总量限流缓存数据的限流结果发送给客户端后,客户端进行缓存的更新,实现服务器和客户端的数据同步。
服务器还可以将缓存的包括访问用户的总量限流缓存数据利用定时同步任务同步至redis数据库,redis数据库用于接收更新后的实际访问量,将更新后的实际访问量和redis数据库缓存的历史访问量进行相加,更新访问用户的总访问量,并将总访问量发送至数据存储数据库。
redis数据库可以对访问用户的总访问量进行更新,避免服务器与数据存储数据库的实时交互,高频率的进行数据存储数据库的增删改查造成数据存储数据库压力大的问题,同时也减少了redis内存使用,缓解因业务系统接入过多造成的缓存数据内存资源不足的问题。
由服务器定期同步总量限流缓存数据中的实际访问量叠加到redis缓存的历史访问量中,得到总访问量,并用总访问量更新服务器总量限流缓存数据中中的实际访问量,并将服务器中的本地访问量清零。具体的,获取服务器总量限流缓存数据集合,遍历总量限流缓存数据集合,获取唯一标识中访问用户的本地访问量,当本地访问量大于0时,用本地访问量与redis缓存的历史访问量之和更新redis缓存的总访问量,并将服务器缓存中的本地访问量置为0,其中服务器缓存中的本地访问量和多个客户端缓存中的本地访问量之和相同。
在本申请的实施例中,服务器和redis数据库通过定时同步任务定期将redis中缓存的总访问量结合服务器中缓存的总量限流缓存数据,批量存储到数据存储数据库中,作为业务系统访问流量的历史数据,以便后期的查看分析与规则设置等。
也就是说,数据存储数据库用于接收访问用户的总访问量以及总量限流缓存数据中除总访问量以外的其他数据,并进行存储。具体的,数据存储数据库可以是EDB数据库。
由于redis数据库中仅缓存了总访问量,包括是否允许访问、实际访问量和最大限流访问量等字段的总量限流缓存数据是缓存在服务器中,可以同时存储至EDB数据库。
具体的,获取redis数据库中缓存的总访问量数据集合,根据每一个总访问量对应的唯一标识获取服务器对应的总量限流缓存数据,将两者数据结合创建EDB数据对象,添加到EDB数据对象数组中。将EDB数据对象数组中的数据批量插入数据库表格中,然后删除已入库的redis缓存的总访问量和服务器的总量限流缓存数据。
在实际应用中,在将服务器和redis数据库中缓存的访问用户的其他访问数据和总访问量进行同步存储时,可以在同步任务中添加数据库锁,避免多服务器中的数据同时写入问题,以免发生数据存储混乱。
在本申请的实施例中,在进行访问流量统计时,缓存的总量限流缓存数据中包括是否允许访问和最大限流访问量等字段,当访问用户出现恶意访问或超量访问的情况,直接向业务系统反馈不允许访问的限流查询结果,限制该访问用户对业务系统的继续访问,能够有效控制业务系统的访问情况,并且成本较低,无需修改业务系统即可实现控制某一访问用户的流量访问。
由此可见,本申请在进行访问流量统计时,采用多层数据缓存,包括客户端缓存,服务器端缓存和redis缓存,利用多层缓存处理业务系统的访问量,避免了业务系统与数据库直接高频交互带来的一系列高并发及数据库压力等问题。并且,客户端缓存,服务器端缓存和redis缓存会进行数据同步,保证数据的互通一致性,保证数据准确,提升服务质量,而且客户端与服务器相互独立,即使服务端无法继续工作,由于数据一致性,业务系统依然可以使用客户端的访问流量统计服务且不会对业务产生不良影响。
并且本申请实施例中的客户端可以利用API直接调用,即提供给业务系统即插即用的系统插件-客户端,能够让业务系统通过简单引用实现访问流量统计服务,降低业务系统的开发成本。
本申请实施例提供一种访问流量统计系统,系统包括:访问流量统计设备、redis数据库和数据存储数据库,访问流量统计设备用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将本地访问量和访问流量统计设备缓存的实际访问量进行相加,得到在预定时间段内更新后的实际访问量,并将更新后的实际访问量发送给redis数据库,redis数据库用于接收更新后的实际访问量,将更新后的实际访问量和redis数据库缓存的历史访问量进行相加,更新访问用户的总访问量,并将总访问量发送至数据存储数据库,数据存储数据库用于接收访问用户的总访问量,并进行存储。也就是说,通过利用访问流量统计设备和redis数据库的访问量叠加完成对于同一用户在不同的业务系统中的访问流量统计,可以全面统计一个用户在所有业务系统中的访问流量表现,实现有效的分析统计。此外,利用访问流量统计设备和redis数据库处理用户在多个业务系统的访问量,避免了业务系统与数据存储数据库的直接高频交互带来的数据存储数据库性能较差的问题。
基于以上实施例提供的一种访问流量统计系统,本申请实施例还提供了一种访问流量统计方法,下面结合附图来详细说明其工作原理。
参见图3,该图为本申请实施例提供的一种访问流量统计方法的流程示意图。
本实施例提供的访问流量统计方法包括以下步骤:
S101,所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量。
S102,所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量。
S103,所述访问流量统计设备将所述更新后的实际访问量发送给redis数据库。
在本申请的实施例中,访问流量统计设备将所述更新后的实际访问量发送给redis数据库之后,以便所述redis数据库将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量存储至数据存储数据库。
可选地,所述访问流量统计设备包括终端设备和服务器;
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量包括:
所述终端设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量发送至所述服务器并接收所述服务器发送的更新后的实际访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量包括:
所述服务器接收所述本地访问量,将所述本地访问量和所述服务器缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,将所述更新后的实际访问量发送给redis数据库和所述终端设备,并接收所述redis数据库发送的所述总访问量,利用所述总访问量更新所述服务器缓存的实际访问量。
可选地,所述方法还包括:
所述终端设备向所述服务器发送唯一标识对应的访问用户的其他访问数据,并接收所述服务器发送的限流结果,根据所述限流结果更新缓存的所述其他访问数据;
所述服务器接收所述其他访问数据,并根据所述其他访问数据对所述唯一标识对应的访问用户的访问流量进行查询,得到所述限流结果,并将所述限流结果发送给所述终端设备。
可选地,所述方法还包括:
所述数据存储数据库获取所述访问用户的其他访问数据,并将所述访问用户的其他访问数据和所述总访问量进行存储。
可选地,所述方法还包括:
所述服务器根据第一对应关系对所述唯一标识对应的访问用户的最大限流访问量进行查询,所述第一对应关系为所述唯一标识和所述最大限流访问量的对应关系。
可选地,所述方法还包括:
所述服务器缓存所述第一对应关系,以便后续根据所述第一对应关系快速查询所述唯一标识对应的最大限流访问量。
可选地,所述其他访问数据至少包括是否允许访问、实际访问量和最大限流访问量。
可选地,所述访问流量统计设备还包括:配置模块;
所述方法还包括:
所述配置模块预先配置访问流量统计条件和访问流量限制条件,所述访问流量统计条件和所述访问流量限制条件中包括所述第一对应关系。
附图中的流程图和框图,图示了按照本公开各种实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,包括:访问流量统计设备、redis数据库和数据存储数据库;
所述访问流量统计设备,用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,并将所述更新后的实际访问量发送给redis数据库;
所述redis数据库,用于接收所述更新后的实际访问量,将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量发送至所述数据存储数据库;
所述数据存储数据库,用于接收所述访问用户的总访问量,并进行存储。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述访问流量统计设备包括终端设备和服务器;
所述终端设备,用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量发送至所述服务器并接收所述服务器发送的更新后的实际访问量;
所述服务器,用于接收所述本地访问量,将所述本地访问量和所述服务器缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,将所述更新后的实际访问量发送给redis数据库和所述终端设备,并接收所述redis数据库发送的所述总访问量,利用所述总访问量更新所述服务器缓存的实际访问量。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述终端设备,还用于向所述服务器发送唯一标识对应的访问用户的其他访问数据,并接收所述服务器发送的限流结果,根据所述限流结果更新缓存的所述其他访问数据;
所述服务器,还用于接收所述其他访问数据,并根据所述其他访问数据对所述唯一标识对应的访问用户的访问流量进行查询,得到所述限流结果,并将所述限流结果发送给所述终端设备。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述数据存储数据库,还用于获取所述访问用户的其他访问数据,并将所述访问用户的其他访问数据和所述总访问量进行存储。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述服务器,还用于根据第一对应关系对所述唯一标识对应的访问用户的最大限流访问量进行查询,所述第一对应关系为所述唯一标识和所述最大限流访问量的对应关系。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述服务器,还用于缓存所述第一对应关系,以便后续根据所述第一对应关系快速查询所述唯一标识对应的最大限流访问量。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述其他访问数据至少包括是否允许访问、实际访问量和最大限流访问量。
根据本公开的一个或多个实施例,提供了一种访问流量统计系统,所述访问流量统计设备还包括:配置模块;
所述配置模块,用于预先配置访问流量统计条件和访问流量限制条件,所述访问流量统计条件和所述访问流量限制条件中包括所述第一对应关系。根据本公开的一个或多个实施例,提供了一种访问流量统计方法,所述方法包括:
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量;
所述访问流量统计设备将所述更新后的实际访问量发送给redis数据库,以便所述redis数据库将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量存储至数据存储数据库。
根据本公开的一个或多个实施例,提供了一种访问流量统计方法,所述访问流量统计设备包括终端设备和服务器;
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量包括:
所述终端设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量发送至所述服务器并接收所述服务器发送的更新后的实际访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量包括:
所述服务器接收所述本地访问量,将所述本地访问量和所述服务器缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,将所述更新后的实际访问量发送给redis数据库和所述终端设备,并接收所述redis数据库发送的所述总访问量,利用所述总访问量更新所述服务器缓存的实际访问量。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种访问流量统计系统,其特征在于,所述系统包括:访问流量统计设备、redis数据库和数据存储数据库;
所述访问流量统计设备,用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,并将所述更新后的实际访问量发送给redis数据库;
所述redis数据库,用于接收所述更新后的实际访问量,将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量发送至所述数据存储数据库;
所述数据存储数据库,用于接收所述访问用户的总访问量,并进行存储。
2.根据权利要求1所述的系统,其特征在于,所述访问流量统计设备包括终端设备和服务器;
所述终端设备,用于根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量发送至所述服务器并接收所述服务器发送的更新后的实际访问量;
所述服务器,用于接收所述本地访问量,将所述本地访问量和所述服务器缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,将所述更新后的实际访问量发送给redis数据库和所述终端设备,并接收所述redis数据库发送的所述总访问量,利用所述总访问量更新所述服务器缓存的实际访问量。
3.根据权利要求2所述的系统,其特征在于,
所述终端设备,还用于向所述服务器发送唯一标识对应的访问用户的其他访问数据,并接收所述服务器发送的限流结果,根据所述限流结果更新缓存的所述其他访问数据;
所述服务器,还用于接收所述其他访问数据,并根据所述其他访问数据对所述唯一标识对应的访问用户的访问流量进行查询,得到所述限流结果,并将所述限流结果发送给所述终端设备。
4.根据权利要求3所述的系统,其特征在于,
所述数据存储数据库,还用于获取所述访问用户的其他访问数据,并将所述访问用户的其他访问数据和所述总访问量进行存储。
5.根据权利要求3所述的系统,其特征在于,
所述服务器,还用于根据第一对应关系对所述唯一标识对应的访问用户的最大限流访问量进行查询,所述第一对应关系为所述唯一标识和所述最大限流访问量的对应关系。
6.根据权利要求5所述的系统,其特征在于,
所述服务器,还用于缓存所述第一对应关系,以便后续根据所述第一对应关系快速查询所述唯一标识对应的最大限流访问量。
7.根据权利要求3-6任意一项所述的系统,其特征在于,所述其他访问数据至少包括是否允许访问、实际访问量和最大限流访问量。
8.根据权利要求5或6任意一项所述的系统,其特征在于,所述访问流量统计设备还包括:配置模块;
所述配置模块,用于预先配置访问流量统计条件和访问流量限制条件,所述访问流量统计条件和所述访问流量限制条件中包括所述第一对应关系。
9.一种访问流量统计方法,其特征在于,所述方法包括:
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量;
所述访问流量统计设备将所述更新后的实际访问量发送给redis数据库,以便所述redis数据库将所述更新后的实际访问量和所述redis数据库缓存的历史访问量进行相加,更新所述访问用户的总访问量,并将所述总访问量存储至数据存储数据库。
10.根据权利要求9所述的方法,其特征在于,所述访问流量统计设备包括终端设备和服务器;
所述访问流量统计设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量包括:
所述终端设备根据唯一标识确定对应的访问用户在预定时间段内的本地访问量,将所述本地访问量发送至所述服务器并接收所述服务器发送的更新后的实际访问量;
所述访问流量统计设备将所述本地访问量和所述访问流量统计设备缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量包括:
所述服务器接收所述本地访问量,将所述本地访问量和所述服务器缓存的实际访问量进行相加,得到在所述预定时间段内更新后的实际访问量,将所述更新后的实际访问量发送给redis数据库和所述终端设备,并接收所述redis数据库发送的所述总访问量,利用所述总访问量更新所述服务器缓存的实际访问量。
CN202210096975.3A 2022-01-27 2022-01-27 一种访问流量统计方法及系统 Active CN114138810B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210096975.3A CN114138810B (zh) 2022-01-27 2022-01-27 一种访问流量统计方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210096975.3A CN114138810B (zh) 2022-01-27 2022-01-27 一种访问流量统计方法及系统

Publications (2)

Publication Number Publication Date
CN114138810A CN114138810A (zh) 2022-03-04
CN114138810B true CN114138810B (zh) 2022-04-12

Family

ID=80381594

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210096975.3A Active CN114138810B (zh) 2022-01-27 2022-01-27 一种访问流量统计方法及系统

Country Status (1)

Country Link
CN (1) CN114138810B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105069113A (zh) * 2015-08-11 2015-11-18 北京京东尚科信息技术有限公司 一种数据流量实时可视化的方法及系统
CN107239542A (zh) * 2017-06-02 2017-10-10 福建中金在线信息科技有限公司 一种数据统计方法、装置、服务器及存储介质
CN107484201A (zh) * 2017-09-30 2017-12-15 广东欧珀移动通信有限公司 流量统计方法和装置、终端、计算机可读存储介质
CN107708084A (zh) * 2017-09-30 2018-02-16 广东欧珀移动通信有限公司 数据处理方法和装置、计算机设备、计算机可读存储介质
CN108123808A (zh) * 2016-11-28 2018-06-05 华为技术有限公司 流量管理的方法及设备
CN109889401A (zh) * 2019-01-22 2019-06-14 金蝶软件(中国)有限公司 流量统计方法、装置、计算机设备和存储介质
CN110855699A (zh) * 2019-11-18 2020-02-28 北京天融信网络安全技术有限公司 一种流量审计方法、装置、服务器及审计设备
CN113162818A (zh) * 2021-02-01 2021-07-23 国家计算机网络与信息安全管理中心 一种分布式流量采集分析的实现方法及系统
CN113986895A (zh) * 2021-10-08 2022-01-28 杭州美创科技有限公司 一种微服务分布式场景下的三层审计方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160373575A1 (en) * 2015-06-19 2016-12-22 SipNav, LLC Telecommunications and Network Traffic Control System

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105069113A (zh) * 2015-08-11 2015-11-18 北京京东尚科信息技术有限公司 一种数据流量实时可视化的方法及系统
CN108123808A (zh) * 2016-11-28 2018-06-05 华为技术有限公司 流量管理的方法及设备
CN107239542A (zh) * 2017-06-02 2017-10-10 福建中金在线信息科技有限公司 一种数据统计方法、装置、服务器及存储介质
CN107484201A (zh) * 2017-09-30 2017-12-15 广东欧珀移动通信有限公司 流量统计方法和装置、终端、计算机可读存储介质
CN107708084A (zh) * 2017-09-30 2018-02-16 广东欧珀移动通信有限公司 数据处理方法和装置、计算机设备、计算机可读存储介质
CN109889401A (zh) * 2019-01-22 2019-06-14 金蝶软件(中国)有限公司 流量统计方法、装置、计算机设备和存储介质
CN110855699A (zh) * 2019-11-18 2020-02-28 北京天融信网络安全技术有限公司 一种流量审计方法、装置、服务器及审计设备
CN113162818A (zh) * 2021-02-01 2021-07-23 国家计算机网络与信息安全管理中心 一种分布式流量采集分析的实现方法及系统
CN113986895A (zh) * 2021-10-08 2022-01-28 杭州美创科技有限公司 一种微服务分布式场景下的三层审计方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Implementation of an intelligent traffic control system and real time traffic statistics broadcasting;Aman Dubey 等;《Electronics, Communication and Aerospace Technology》;20171218;第33-37页 *
基于网络流量预测的高校个人健康状况上报系统设计与实现;熊鹰 等;《中国教育信息化》;20210505;第72-75页 *
工控网络流量可视化系统设计研究;连栋 等;《自动化仪表》;20211020;第42卷(第10期);第98-101页 *

Also Published As

Publication number Publication date
CN114138810A (zh) 2022-03-04

Similar Documents

Publication Publication Date Title
CN109639773B (zh) 一种动态构建的分布式数据集群控制系统及其方法
CN109656956B (zh) 一种实现业务系统数据集中式缓存的方法及装置
US20140025723A1 (en) Cloud storage system and data storage and sharing method based on the system
CN106886371B (zh) 缓存数据处理方法及装置
CN105049252A (zh) 一种配置信息管理方法和装置
CN101771723A (zh) 数据同步方法
CN108429777A (zh) 一种基于缓存的数据更新方法及服务器
CN111859132A (zh) 一种数据处理方法、装置及智能设备、存储介质
WO2012103920A1 (en) Distributed database
CN105978948B (zh) 一种云服务的方法和系统
CN112860799A (zh) 一种分布式数据库数据同步的管理方法
US20050066014A1 (en) Method and apparatus for reconfiguring a server system
CN101778131A (zh) 数据同步系统
CN101789963A (zh) 数据同步系统
CN112035413B (zh) 元数据信息查询方法、装置及存储介质
CN114138810B (zh) 一种访问流量统计方法及系统
CN110798495A (zh) 用于在集群架构模式下端到端的消息推送的方法和服务器
CN106603610A (zh) 一种数据获取方法及装置
CN112910796A (zh) 流量管理方法、装置、设备、存储介质以及程序产品
CN114866597B (zh) 一种分组管理客户端连接方法以及系统
US12007986B2 (en) Aggregation over high-cardinality dimensions using uniqueness indices
CN114584576B (zh) 数据存储方法、装置、设备、存储介质及计算机程序产品
CN113791733A (zh) 信息的存储方法、装置、设备及存储介质
CN113138943A (zh) 一种处理请求的方法和装置
KR100545744B1 (ko) 클러스터링 환경에서의 모바일 비즈니스 응용 서버간 콘텐츠 캐시 동기화 방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant