CN110795166B - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN110795166B
CN110795166B CN201911031641.2A CN201911031641A CN110795166B CN 110795166 B CN110795166 B CN 110795166B CN 201911031641 A CN201911031641 A CN 201911031641A CN 110795166 B CN110795166 B CN 110795166B
Authority
CN
China
Prior art keywords
browser
event
acquisition
cached
events
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
CN201911031641.2A
Other languages
English (en)
Other versions
CN110795166A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201911031641.2A priority Critical patent/CN110795166B/zh
Publication of CN110795166A publication Critical patent/CN110795166A/zh
Priority to PCT/CN2020/119040 priority patent/WO2021082859A1/zh
Application granted granted Critical
Publication of CN110795166B publication Critical patent/CN110795166B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Abstract

本发明实施例公开了一种数据处理方法及装置,其中方法包括:确定待缓存的采集事件后,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件。本发明实施例中的数据处理方法支持多种浏览器缓存机制,在获取待缓存的采集事件后,通过确定与浏览器匹配的目标缓存机制,并使用匹配的目标缓存机制来缓存待缓存的采集事件,可以保证待缓存的采集事件缓存的准确性,从而可以解决现有技术由于仅设置默认的一种浏览器缓存机制而导致的缓存的采集事件乱码或无法缓存采集事件的问题,提高采集事件缓存的准确性。

Description

一种数据处理方法及装置
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及一种数据处理方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,然而由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。现阶段,金融科技领域通常设置有多种应用程序,用户可以在这些应用程序上申请金融业务,比如支付业务、贷款业务、保险业务等;一般来说,当用户在应用程序上触发埋点事件时,应用程序会基于埋点事件生成采集事件,并将采集事件上报给采集服务器。然而,若由于故障(比如网络故障、设备损坏等)导致采集事件无法被顺利上报给采集服务器,则为了提高采集事件的采集成功率,应用程序可以先缓存采集事件至某一位置,并在故障修复后,重新上报缓存的采集事件。
现阶段,金融科技领域中的大多数应用程序都是属于内嵌浏览器的应用程序,内嵌浏览器的应用程序可以基于浏览器缓存技术缓存应用程序未能成功上报的采集事件。然而,现有的浏览器缓存技术为终端设备附属的软件配置,一般是在终端设备出厂时根据浏览器的版本进行设置的,因此仅能支持终端设备默认的专用浏览器缓存机制,而无法用于具有不同版本的浏览器的终端设备。由此可知,若采用现有的浏览器缓存技术缓存采集事件,可能存在浏览器缓存技术与应用程序中内嵌浏览器的版本不匹配的问题,如此,若强行使用不匹配的浏览器缓存技术缓存采集事件,可能会使应用程序缓存到乱码的采集事件,甚至无法缓存到采集事件缓存。
综上,目前亟需一种数据处理方法,用以解决现有的浏览器缓存技术仅能支持专用的浏览器版本而导致应用程序缓存的采集事件乱码或无法缓存采集事件的技术问题。
发明内容
本发明实施例提供一种数据处理方法,用以解决现有的浏览器缓存技术仅能支持专用的浏览器版本而导致应用程序缓存的采集事件乱码或无法缓存采集事件的技术问题。
第一方面,本发明实施例提供的一种数据处理方法,包括:
确定待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件;进一步地,基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件。
在上述设计中,数据处理方法可以支持多种浏览器缓存机制,在获取待缓存的采集事件后,通过确定与浏览器匹配的目标缓存机制,并使用匹配的目标缓存机制来缓存待缓存的采集事件,可以保证待缓存的采集事件缓存的准确性,从而可以解决现有技术由于仅设置默认的一种浏览器缓存机制而导致的缓存的采集事件乱码或无法缓存采集事件的问题,提高所缓存的采集事件的准确性。
在一种可能的设计中,所述确定与所述浏览器匹配的目标浏览器缓存机制,包括:获取所述浏览器的配置文件,若所述浏览器的配置文件中包含window.localStorage对象,则确定localhost缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则确定indexDB缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.openDatabase对象,则确定WebSQL缓存机制为备选浏览器缓存机制;若存在多个备选浏览器缓存机制,则从所述多个备选浏览器缓存机制中选择优先级最大的浏览器缓存机制作为所述目标浏览器缓存机制。
在上述设计中,通过预先设置多个浏览器缓存机制的优先级,当存在多个备选浏览器缓存机制时,可以使用优先级最高的浏览器缓存机制执行缓存操作,从而可以提高缓存的效率;且,多个浏览器缓存机制的优先级可以根据需要进行设置,从而可以更加满足用户的需要。
在一种可能的设计中,所述确定与所述浏览器匹配的目标浏览器缓存机制,包括:获取所述浏览器的配置文件,检测所述浏览器的配置文件中是否包含window.localStorage对象,若是,则确定本地主机缓存机制为目标浏览器缓存机制;若否,则检测所述浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则确定indexDB缓存机制为目标浏览器缓存机制,若否,则检测所述浏览器的配置文件中是否包含window.openDatabase对象,若是,则确定WebSQL缓存机制为目标浏览器缓存机制,若否,则确定不存在与所述浏览器匹配的目标浏览器缓存机制。
在上述设计中,一方面,通过查询配置文件来确定浏览器支持的缓存机制,可以准确匹配到合适的目标缓存机制;另一方面,通过设置从配置文件中检测浏览器对象的顺序,可以在检测到某一浏览器缓存机制对应的对象时,直接将该浏览器缓存机制确定为目标浏览器缓存机制,而无需再执行检测其它浏览器缓存机制的对象的操作,从而操作较为简单,效率较高,且灵活性强。
在一种可能的设计中,所述获取所述浏览器的配置文件之前,还包括:确定不存在用户指定的所述目标浏览器缓存机制。
在上述设计中,通过用户来指定浏览器缓存机制,可以满足用户的实际需要,从而更加满足实际场景,用户的体验较好;且,通过采用先确定用户指定的缓存机制再根据配置文件确定缓存机制的方式,可以在保证用户需求的基础上准确匹配到目标缓存机制,灵活性较好。
在一种可能的设计中,所述使用所述目标浏览器缓存机制缓存所述采集事件,包括:使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,并将所述待缓存的多条采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
在上述设计中,通过使用一次压缩过程将所有待缓存的采集事件压缩成一个字符串缓存,可以以较少的操作次数完成待缓存的采集数据的缓存工作,且可以减少所缓存的采集数据占用的空间,降低后续重发的次数,提高重发效率。
在一种可能的设计中,所述使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,包括:针对于待缓存的每条采集事件,从所述采集事件中提取得到所述采集事件在各项特征下的值;进一步地,针对于任一项特征,根据所述待缓存的多条采集事件在所述特征下的值,生成所述特征对应的特征向量,如此,根据各项特征对应的特征向量,组合得到所述待缓存的多条采集事件对应的字符串缓存。
在上述设计中,通过从各个待缓存的采集事件中提取出各个待缓存的采集事件在每个特征项下的值,并基于多个特征项及各个待缓存的采集事件在多个特征项下的值构建字符串缓存,可以以键值对的形式(即字符串缓存)保存待缓存的多个采集事件,如此,字符串缓存相比于待缓存的多个采集事件来说可以占用较少的数据量,压缩效果较好。
在一种可能的设计中,所述使用所述目标浏览器缓存机制缓存所述采集事件,包括:使用预设压缩算法压缩待缓存的任一采集事件,得到所述待缓存的每个采集事件对应的字符串缓存,并将所述待缓存的每个采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
在上述设计中,通过分别压缩每条采集事件,可以灵活地控制每条采集事件的重发过程,避免一次上报较多的采集数据而影响浏览器的正常工作。
在一种可能的设计中,所述使用所述目标浏览器缓存机制缓存所述待缓存的采集事件之后,若检测到用户触发所述浏览器上的第二预设操作,则在执行所述第二预设操作对应的任务时生成多条采集事件;进一步地,创建第一队列,确定所述目标浏览器缓存机制对应的存储空间中是否存储有字符串缓存,若是,则先将所述字符串缓存存储在所述第一队列中,再将所述多条采集事件依次存储在所述第一队列中;所述多条采集事件位于所述字符串缓存之后;若否,则将所述多条采集事件依次存储在所述第一队列中;在重发采集数据时,依次将所述第一队列中存储的采集数据上报给所述采集服务器。
在上述设计中,通过缓存采集事件,并在下次上报过程中先上报缓存的采集事件再上报新的采集事件,可以保证采集服务器不遗漏采集事件,提高采集事件上报的成功率,从而提高采集服务器接收采集事件的准确性。
第二方面,本发明实施例提供的一种数据处理装置,所述装置包括:
确定模块,用于确定待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件;
缓存模块,用于基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件。
在一种可能的设计中,所述确定模块具体用于:获取所述浏览器的配置文件,若所述浏览器的配置文件中包含window.localStorage对象,则确定localhost缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则确定indexDB缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.openDatabase对象,则确定WebSQL缓存机制为备选浏览器缓存机制;若存在多个备选浏览器缓存机制,则从所述多个备选浏览器缓存机制中选择优先级最大的浏览器缓存机制作为所述目标浏览器缓存机制。
在一种可能的设计中,所述确定模块具体用于:获取所述浏览器的配置文件后,检测所述浏览器的配置文件中是否包含window.localStorage对象,若是,则确定本地主机缓存机制为目标浏览器缓存机制;若否,则检测所述浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则确定indexDB缓存机制为目标浏览器缓存机制,若否,则检测所述浏览器的配置文件中是否包含window.openDatabase对象,若是,则确定WebSQL缓存机制为目标浏览器缓存机制,若否,则确定不存在与所述浏览器匹配的目标浏览器缓存机制。
在一种可能的设计中,所述确定模块获取所述浏览器的配置文件之前,还用于:确定不存在用户指定的所述目标浏览器缓存机制。
在一种可能的设计中,所述缓存模块具体用于:使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,并将所述待缓存的多条采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
在一种可能的设计中,所述缓存模块具体用于:针对于待缓存的每条采集事件,从所述采集事件中提取得到所述采集事件在各项特征下的值;针对于任一项特征,根据所述待缓存的多条采集事件在所述特征下的值,生成所述特征对应的特征向量,如此,根据各项特征对应的特征向量,组合得到所述待缓存的多条采集事件对应的字符串缓存。
在一种可能的设计中,所述缓存模块具体用于:使用预设压缩算法压缩待缓存的任一采集事件,得到所述待缓存的每个采集事件对应的字符串缓存,并将所述待缓存的每个采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
在一种可能的设计中,所述装置还包括处理模块,所述缓存模块使用所述目标浏览器缓存机制缓存所述待缓存的采集事件之后,所述处理模块用于:检测到用户触发所述浏览器上的第二预设操作后,在执行所述第二预设操作对应的任务时生成多条采集事件;创建第一队列,确定所述目标浏览器缓存机制对应的存储空间中是否存储有字符串缓存,若是,则先将所述字符串缓存存储在所述第一队列中,再将所述多条采集事件依次存储在所述第一队列中;所述多条采集事件位于所述字符串缓存之后;若否,则将所述多条采集事件依次存储在所述第一队列中;依次将所述第一队列中存储的采集数据上报给所述采集服务器。
第三方面,本发明实施例提供的一种计算设备,包括至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行上述第一方面任意所述的数据处理方法。
第四方面,本发明实施例提供的一种计算机可读存储介质,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行上述第一方面任意所述的数据处理方法。
本发明的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种可能的系统架构示意图;
图2为本发明实施例提供的一种数据采集方法对应的整体流程图;
图3为本发明实施例提供的一种数据缓存方法对应的流程示意图;
图4为本发明实施例提供的一种基于游标上报采集事件的方法示意图;
图5为本发明实施例提供的一种基于先进先出的队列算法上报采集数据的方法示意图;
图6为本发明实施例提供的一种确定目标浏览器缓存机制的方法示意图;
图7为本发明实施例提供的一种缓存方法的整体流程示意图;
图8为本发明实施例提供的另一种缓存方法的整体流程示意图;
图9为本发明实施例提供的一种数据重发方法的整体流程示意图;
图10为本发明实施例提供的另一种数据重发方法的整体流程示意图;
图11为本发明实施例提供的一种数据处理装置的结构示意图;
图12本发明实施例提供的一种终端设备的结构示意图;
图13本发明实施例提供的一种后端设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
金融科技(Fintech)技术领域通常涉及到多种交易,比如,银行的交易可以包括售卡交易、存款交易、贷款交易、保险交易、理财交易等,银行每天的交易量可以达到数千笔甚至数万笔。为了保证各项交易的顺利进行,银行通常可以对用户执行各种交易的事件进行采集,进而对采集的各项事件进行大数据分析,得到分析模型;其中,分析模型可以有多种,比如用户流失模型、用户画像等等。如此,银行可以使用分析模型对用户的行为进行预测,从而可以基于预测的用户的行为为用户提供对应的服务。
图1为本发明实施例提供的一种可能的系统架构示意图,如图1所示,该系统架构可以包括采集服务器110和至少一个客户端设备,比如客户端设备121、客户端设备122和客户端设备123;其中,至少一个客户端设备可以分别与采集服务器110通信连接,比如可以通过有线方式实现连接,或者也可以通过无线方式实现连接,具体不作限定。
本发明实施例中,至少一个客户端设备可以分别设置在至少一个业务系统中,比如客户端设备121为贷款业务系统中设置的客户端设备,客户端设备122为保险业务系统中设置的客户端设备,客户端设备123为理财业务系统中设置的客户端设备。本发明实施例中,客户端设备可以是指提供应用程序的服务器,应用程序为内嵌浏览器的应用程序,如此,若用户终端上安装有客户端设备提供的应用程序,则客户端设备可以检测到用户在应用程序的浏览器上所触发的操作,并可以向用户提供相应的服务。
需要说明的是,图1仅是一种示例性的简单说明,其所列举的客户端设备的数量仅是为了便于说明方案,并不构成对方案的限定,在具体实施中,客户端设备的数量可以远远大于3个,比如可以为4个或4个以上。
基于图1所示意的系统架构,图2为本发明实施例提供的一种数据采集方法对应的整体流程示意图,该方法包括:
以客户端设备121提供的应用程序为例,当用户在应用程序的浏览器上触发第一预设操作后,若在执行第一预设操作对应的业务时触发了埋点事件1、埋点事件2和埋点事件3,则客户端设备121可以依次生成埋点事件1对应的采集事件1、埋点事件2对应的采集事件2,以及埋点事件3对应的采集事件3。举例来说,若微粒贷应用程序为客户端设备121提供的应用程序,则当用户打开用户终端中的微粒贷应用程序的微粒贷产品页面后,若用户在微粒贷产品页面上触发了“一键借款”的按钮,则客户端设备121可以依次从多个第三方平台查询用户的相关信息,从而确定是否可以向用户提供贷款;比如,客户端设备121可以先从个人信息维护平台中查询用户的个人信息,当个人信息查询通过后,可以从开户信息维护平台查询用户的开户信息,当开户信息查询通过后,可以从贷款信息维护平台中查询用户的贷款资格;进一步地,若个人信息、开户信息和贷款资格均查询通过,则客户端设备121可以向用户提供借款,若个人信息、开户信息和贷款资格中存在任意一个查询不通过,则可以拒绝用户的借款申请。
在上述过程中,在执行“一键贷款”对应的贷款业务时,客户端设备分别执行了查询用户的个人信息、查询用户的开户信息以及查询用户的贷款资格这三个子任务。如此,若客户端设备121预先在微粒贷应用程序上设置了埋点事件1、埋点事件2和埋点事件3,埋点事件1指示客户端设备121(或用户)执行了查询个人信息维护平台中的个人信息的子任务,埋点事件2指示客户端设备121(或用户)执行了查询开户信息维护平台中的开户信息的子任务,埋点事件3指示客户端设备121(或用户)执行了查询贷款信息维护平台中的贷款资格的子任务,则在用户触发了“一键借款”的按钮后,由于埋点事件1、埋点事件2和埋点事件3依次被触发,因此客户端设备121可以依次生成埋点事件1对应的采集事件1、埋点事件2对应的采集事件2,以及埋点事件3对应的采集事件3。
本发明实施例中,查询用户的个人信息、查询用户的开户信息以及查询用户的贷款资格这三个子任务的执行间隔非常短,可能只有几毫秒,因此客户端设备121在执行贷款业务的过程中,相当于并行地生成采集事件1、采集事件2和采集事件3。
进一步地,若客户端设备121中已设置了用于上报采集数据的队列a1,则客户端设备121可以将采集事件1、采集事件2和采集事件3从队列a1的队尾依次插入到队列a1中,假设队列a1中存储的采集事件已占用了队列a1的位置0~位置i-1,则采集事件1可以占用队列a1的位置i、采集事件2可以占用队列a1的位置i+1,采集事件3可以占用队列a1的位置i+2;其中,i可以为大于或等于0的整数。
本发明实施例中,当任一条采集事件存储在队列a1后,客户端设备121可以为该条采集事件分配一个唯一标识;其中,采集事件的唯一标识可以由本领域技术人员根据经验进行设置,在一个示例中,可以设置唯一标识为时间戳与随机数的组合形式,且长度为16位。
需要说明的是,本发明实施例中,每个采集事件可以包括但不限于:应用程序的标识、用户的标识、采集事件的标识、设备的信息、用户的信息以及业务的信息。其中,设备的信息可以包括设备型号、品牌、系统版本、浏览器版本、处理器的类型、中央处理器(centralprocessing unit,CPU)的核数等,用户的信息可以包括用户的客户号或者用户在业务中的唯一标识ID,或者还可以包括用户的姓名、性别、手机号码、常住地等,业务的信息可以是指埋点事件的类型、业务的流水号等,具体不作限定。
本发明实施例中,客户端设备121中设置有埋点事件,当检测到埋点事件被触发时,客户端设备121可以根据触发埋点事件的信息生成采集事件(比如采集事件k),然后将采集事件k放置在队列中,队列用于存储待上报的采集事件。如此,客户端设备121可以将队列中的采集事件k上报给采集服务器110,上报的方式可以有多种,比如可以按照采集事件在队列中的顺序依次进行上报,当确定采集事件k的前一条采集事件上报成功后,再上报采集事件k,或者也可以按照预设周期进行上报,比如若预设周期为2分钟,则客户端设备121可以每2分钟从队列a1中获取一条未上报的采集事件,并上报给采集服务器110。
相应地,在上报采集事件k之前,客户端设备121可以先查询上报进程中是否存在正在上报的采集事件,若不存在,则可以直接将采集事件k上报给采集服务器110,若存在,则可以先等待正在上报的采集事件(比如采集事件h)上报完成(即接收到采集服务器发送的响应消息)。当采集事件h上报完成后,若确定采集事件h上报成功,则可以将采集事件k上报给采集服务器110;若确定采集事件h上报失败,则可以查询采集事件h已上报给采集服务器110的次数,若已上报的次数大于或等于预设次数,说明当前网络故障,因此可以从队列a1中将采集事件h以及其它未上报的采集事件全部缓存起来,若已上报的次数小于预设次数,则可以重新上报采集事件h,并在上报完成后确定采集事件h是否上报成功,重复执行上述步骤。
进一步地,当队列a1中未上报的采集事件被缓存后,或者队列a1中的采集事件全部被上报成功,则客户端设备121可以将队列a1删除。如此,当用户触发第二预设操作后,若在执行第二预设操作对应的业务时触发埋点事件4、埋点事件5和埋点事件6,则客户端设备121可以依次生成埋点事件4对应的采集事件4、埋点事件5对应的采集事件5,以及埋点事件6对应的采集事件6;进一步地,由于队列a1被删除,因此客户端设备中未设置有用于上报采集事件的队列,如此,客户端设备121可以创建队列a2,并将采集事件4、采集事件5和采集事件6存储在队列a2中。其中,客户端设备121在将采集事件4、采集事件5和采集事件6存储在队列a2之前,可以先查询确定是否存在已缓存的采集事件,若存在已缓存的采集事件,则可以先将已缓存的采集事件从队列a2的队尾插入队列a2中,然后将采集事件4、采集事件5和采集事件6从队列a2的队尾插入队列a2中,最后基于队列a2执行上报过程。如此,客户端设备121可以先将上次未上报的采集事件上报给采集服务器110,然后在将本次新生成的采集事件上报给采集服务器110,从而提高采集事件采集的成功率。
需要说明的是,图2仅是一种示例性的简单说明,其所列举的数据采集方法仅是为了便于说明方案,并不构成对方案的限定,在具体实施中,采集数据的存储方式、待缓存的采集数据等均可以有本领域技术人员根据经验进行设置,或者也可以根据业务需要进行设置,具体不作限定。
基于图2所示意的数据采集方法,图3为本发明实施例提供的一种数据缓存方法对应的流程示意图,该方法包括:
步骤301,确定待缓存的采集事件。
本发明实施例中,待缓存的采集事件可以为根据预设规则确定的,其中,预设规则可以由本领域技术人员根据经验进行设置,或者也可以由用户指定,或者还可以根据业务需要进行设置,不作限定。举例来说,在一种可能的情形中,预设规则可以是指网络流量小于预设流量,在该种情形中,客户端设备121可以实时监控网络流量的变化情况,若某一时刻的网络流量小于预设流量,则说明当前网络故障,因此客户端设备121可以将该时刻时队列a1中未上报的全部采集事件作为待缓存的采集事件;在另一种可能的情形中,预设规则可以是指采集事件的上报次数大于预设次数,在该种情形中,假设预设次数为3,且客户端设备121按照采集事件在队列a1中的顺序依次上报采集事件,则针对于队列a1中的任一条采集事件,若在预设次数的上报过程中该条采集事件均未成功上报给采集服务器110,则客户端设备121可以将队列a1中该采集事件以及其它未上报的采集事件作为待缓存的采集事件。
本发明实施例中,从队列a1中确定未上报的采集事件的方式可以有多种,下面主要介绍两种可能的实现方式,可以理解的,确定未上报的采集事件的方式也可以由用户根据业务需要进行设置,本发明实施例对此不作限定:
实现方式一
在实现方式一中,客户端设备121可以预先设置游标,游标用于指示待上报的采集事件在队列a1中的位置。
图4为本发明实施例提供的一种基于游标上报采集事件的方法示意图,如图4所示,客户端设备121中已设置有用于上报采集事件的队列a1,队列a1包含队头和队尾,采集事件可以从队列a1的队尾依次插入队列a1,队列a1中依次存储有采集事件1、采集事件2和采集事件3,采集事件1占用队列a1的初始位置0,采集事件2占用队列a1的位置1,采集事件3占用队列a1的位置2。
具体实施中,游标在初始状态时可以指示队列a1的初始位置,即位置0,因此,客户端设备121在初次上报采集事件时,可以先获取游标指示的位置0存储的采集事件1,然后可以将采集事件1放置在浏览器请求队列中,经由浏览器将采集事件1上报给采集服务器110。若客户端设备121接收到采集服务器110发送的第一类型响应消息(用于指示成功接收到采集事件),说明采集事件1成功上报给采集服务器110,因此客户端设备121可以控制游标从队列a1的队头方向向队尾方向后移一位,使得游标指示在队列a1的位置1,如此,在下次上报采集事件时,客户端设备121可以将游标指示的位置1存储的采集事件2上报给采集服务器110。
进一步地,在上报采集事件2时,若客户端设备121接收到采集服务器110发送的第二类型响应消息(用于指示设定时长内未接收到采集事件或接收到非法格式的采集事件),说明采集事件2未能成功上报给采集服务器110,因此客户端设备121可以重复上报采集事件2,若重复上报预设次数(比如3次)均接收到采集服务器110发送的第二类型响应消息,则说明采集事件2在3次重复上报中均未成功上报给采集服务器110,当前网络故障,因此队列a1中游标指示的位置1至队列a1末端的位置2之间的采集事件(即采集事件2和采集事件3)为未上报给采集服务器110的采集事件,即客户端设备121可以将采集事件2和采集事件3作为待缓存的采集事件。
在实现方式一中,通过使用游标记录待上报的采集事件在队列中的位置,可以使得采集事件在队列中的位置不会发生变化,如此,客户端设备可以无需频繁地移动采集事件,从而可以降低系统性能损耗;且,根据游标可以方便地获取到下一次待上报的采集事件所在的位置,从而可以提高数据采集的灵活性。
实现方式二
在实现方式二中,客户端设备121可以采用先进先出的队列算法上报采集数据,具体地说,客户端设备121每成功上报一条采集事件,即可将该条采集事件从队列a1中删除,并可以将其它采集事件依次前移,从而保持队列a1中的元素持续更新。
图5为本发明实施例提供的一种基于先进先出的队列算法上报采集数据的实现方法示意图,如图5所示,队列a1中依次存储有采集事件1、采集事件2和采集事件3,采集事件1占用队列a1的初始位置0,采集事件2占用队列a1的位置1,采集事件3占用队列a1的位置2。
具体实施中,客户端设备121可以先获取队列a1的位置0存储的采集事件1,然后可以将采集事件1放置在浏览器请求队列中,经由浏览器将采集事件1上报给采集服务器110。若客户端设备121接收到采集服务器110发送的第一类型响应消息,说明采集事件1成功上报给采集服务器110,因此客户端设备121可以控制将采集事件1从队列a1的队头方向移出队列a1(或者直接删除采集事件1),并依次控制采集事件2和采集事件3前移一个位置,从而使得采集事件2占用队列a1的位置0,采集事件3占用队列a1的位置1。如此,客户端设备121在每次上报的采集事件均为位于队列a1的初始位置的采集事件。
进一步地,在上报采集事件2时,若客户端设备121接收到采集服务器110发送的第二类型响应消息,说明采集事件2未能成功上报给采集服务器110,因此客户端设备121可以重复预设次数(不如3次)上报采集事件2,若重复上报3次均接收到采集服务器110发送的第二类型响应消息,则说明采集事件2在3次重复上报中均未成功上报给采集服务器110,当前网络故障,因此客户端设备121可以将队列a1中未上报给采集服务器110的采集事件作为待缓存的采集事件。具体地说,由于采集事件被成功上报给采集服务器110后即将采集事件从队列a1中删除,因此队列a1中存储的采集事件均为未上报给采集服务器110的采集事件,也就是说,在确定网络故障时,客户端设备121可以将队列a1中存储的全部采集事件缓存在队列a1
在实现方式二中,通过从队列中删除已上报的采集事件,可以降低队列所占用的存储空间,从而在采集事件增多时无需为队列重新扩展存储空间,提高队列的可用性以及存储空间的使用率。
根据上述内容可知,当某一采集事件无法被上报给采集服务器,从而确定网络故障时,若使用实现方式一确定待缓存的采集事件,则可以将队列a1中游标指示的位置至队列a1的末端位置之间的采集事件作为待缓存的采集事件,若使用实现方式二确定待缓存的采集事件,则可以将队列a1中存储的所有采集事件作为待缓存的采集事件。
步骤302,基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与浏览器匹配的目标浏览器缓存机制,并使用目标浏览器缓存机制缓存采集事件。
本发明实施例中,确定目标浏览器缓存机制的方式可以有多种,下面分别以示例一、示例二和示例三为例描述三种确定目标浏览器缓存机制的可能方式。
示例一
在示例一中,可以通过暴露配置的方式,让用户指定目标浏览器缓存机制。
具体实施中,可以预先编写设置目标浏览器缓存机制的函数,比如waLog.using(protocol,database)函数,如此,当用户引入数据缓存方法对应的脚本文件时,可以通过前端或后端直接将waLog.using(protocol,database)函数暴露给用户。其中,该函数支持用户输入第一参数protocol和第二参数database,第一参数protocol用于提示用户指定目标浏览器缓存机制,可选值包括但不限于localStorage、indexedDB和webSQL中的任意一种;第二参数database用于提示用于指定目标浏览器缓存机制所缓存的采集事件存储的位置。
举例来说,若用户调用该函数,并设置第一参数protocol为localStorage,设置第二参数database为test,则该函数变为:
waLog.using(localStorage,test)
说明用户指定使用localStorage缓存机制作为目标浏览器缓存机制,并且设置localStorage缓存机制所缓存的采集事件存储在命名为‘test’的数据库中。
在示例一中,确定待缓存的采集事件后,可以通过调用脚本文件中的waLog.using(protocol,database)函数确定用户是否指定了浏览器缓存机制,若是,则可以直接将用户指定的浏览器缓存机制作为目标浏览器缓存机制,若否,则可以向用户发送目标浏览器缓存机制不存在的响应消息。采用该种实现方式,通过用户来指定浏览器缓存机制,可以满足用户的实际需要,从而更加满足实际场景,用户的体验较好。
示例二
在示例二中,可以通过浏览器的支持情况,自动选择与浏览器匹配的目标浏览器缓存机制。
在一种可能的实现方式中,在确定待缓存的采集事件后,客户端设备121可以先从应用程序中获取浏览器的配置文件,并从浏览器的配置文件中确定是否存在多个浏览器缓存机制对应的对象,比如,若浏览器的配置文件中存在window.localStorage对象,则将localhost缓存机制确定为一个备选浏览器缓存机制;若浏览器的配置文件中存在window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则将indexDB缓存机制作为一个备选浏览器缓存机制;若浏览器的配置文件中存在window.openDatabase对象,则将WebSQL缓存机制作为一个备选浏览器缓存机制;如此,若备选浏览器缓存对象的数量存在多个,则可以将多个备选浏览器缓存对象中优先级最高的备选浏览器缓存对象确定为目标浏览器缓存对象。
在该种实现方式中,通过预先设置多个浏览器缓存机制的优先级,当存在多个备选浏览器缓存机制时,可以使用优先级最高的浏览器缓存机制执行缓存操作,从而可以提高缓存的效率;且,多个浏览器缓存机制的优先级可以根据需要进行设置,从而可以更加满足用户的需要。
在另一种可能的实现方式中,在确定待缓存的采集事件后,客户端设备121可以先从应用程序中获取浏览器的配置文件,然后检测浏览器的配置文件中是否包含window.localStorage对象,若是,则可以将本地主机缓存机制确定为目标浏览器缓存机制;若否,则可以检测浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则可以将indexDB缓存机制作为目标浏览器缓存机制,若否,则可以检测浏览器的配置文件中是否包含window.openDatabase对象,若是,则可以将WebSQL缓存机制为目标浏览器缓存机制,若否,则可以确定不存在与所述浏览器匹配的目标浏览器缓存机制。
在该种实现方式中,通过查询配置文件来确定浏览器支持的缓存机制,可以准确匹配到合适的目标缓存机制;且,通过设置从配置文件中检测浏览器对象的顺序,可以在检测到某一浏览器缓存机制对应的对象时,直接将该浏览器缓存机制确定为目标浏览器缓存机制,而无需再执行检测其它浏览器缓存机制的对象的操作,从而操作较为简单,效率较高,灵活性强。
示例三
示例三可以结合实现示例一和示例二,具体地说,可以先根据示例一确定是否存在用户指定的浏览器缓存机制,若存在,则将用户指定的浏览器缓存机制作为目标缓存机制,若不存在,则可以根据示例二自动确定与浏览器匹配的目标缓存机制。
基于示例三,图6为本发明实施例提供的一种确定目标浏览器缓存机制的方法的流程示意图,该方法包括:
步骤601,判断是否存在用户指定的浏览器缓存机制,若是,则执行步骤602,若否,则执行步骤603。
此处,判断的方法可以为:先调用waLog.using(protocol,database)函数,然后确定该函数的第一参数protocol是否被赋值,若是,则确定存在用户指定的浏览器缓存机制,若否,则确定不存在用户指定的浏览器缓存机制。
步骤602,将用户指定的浏览器缓存机制作为目标浏览器缓存机制,执行步骤610。
具体实施中,用户可以对第一参数protocol赋值localStorage、indexedDB或webSQL,从而指定localStorage缓存机制、indexedDB缓存机制和webSQL缓存机制中的任意一种缓存机制。如此,若用户指定的浏览器缓存机制为localhost缓存机制,则可以将localhost缓存机制作为目标浏览器缓存机制,若用户指定的浏览器缓存机制为indexedDB缓存机制,则可以将indexedDB缓存机制作为目标浏览器缓存机制,若用户指定的浏览器缓存机制为webSQL缓存机制,则可以将webSQL缓存机制作为目标浏览器缓存机制。
步骤603,判断浏览器的配置文件中是否包含window.localStorage对象,若是,则执行步骤604,若否,则执行步骤605。
步骤604,将localhost缓存机制作为目标浏览器缓存机制,执行步骤610。
步骤605,判断浏览器的配置文件中是否包含window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一种或任意多种,若是,则执行步骤606,若否,则执行步骤607。
步骤606,将indexDB缓存机制作为目标浏览器缓存机制,执行步骤610。
步骤607,判断浏览器的配置文件中是否包含window.openDatabase对象,若是,则执行步骤608,若否,则执行步骤609。
步骤608,将WebSQL缓存机制作为目标浏览器缓存机制,执行步骤610。
步骤609,生成并发送告警消息,和/或,不缓存待缓存的采集事件。
步骤610,使用目标浏览器缓存机制缓存待缓存的采集事件。
在示例三中,通过先确定用户是否指定目标浏览器缓存机制,再根据配置文件确定目标浏览器缓存机制的方式,可以在保证用户需求的基础上准确匹配到目标缓存机制,灵活性较好。
需要说明的是,上述示例一、示例二和示例三整合了localStroage缓存机制、IndexDB缓存机制和WebSQL缓存机制,这三种缓存机制都是基于W3C国际标准实现的缓存机制。可以理解的,本发明实施例不限定应用程序仅使用这三种浏览器缓存机制,用户也可以根据业务需要自行设置应用程序支持的浏览器缓存机制,具体不作限定。
本发明实施例中,在确定目标缓存机制后,可以使用目标浏览器缓存机制直接缓存待缓存的采集事件,或者也可以先对待缓存的采集事件进行压缩,再使用目标浏览器缓存机制缓存压缩后的待缓存的采集事件,具体不作限定。以压缩待缓存的采集事件为例,本发明实施例提供如下两种可能的缓存方式:
缓存方式一
在缓存方式一中,可以使用预设压缩算法直接压缩待缓存的多条采集事件,得到多条待缓存的采集事件对应的一个字符串缓存,并可以将该字符串数据缓存存储至目标浏览器缓存机制对应的存储空间。其中,预设压缩算法可以由本领域技术人员根据经验进行设置,具体不作限定。
具体实施中,可以先从待缓存的每条采集事件中提取得到每条采集事件在各项特征下的值,然后针对于任一项特征,根据待缓存的多条采集事件在该项特征下的值,生成该项特征对应的特征向量;如此,可以根据各项特征对应的特征向量组合得到待缓存的多条采集事件对应的字符串缓存。
为了便于描述,本发明实施例将缓存多个采集事件得到的字符串缓存称为字符串缓存,将缓存一个采集事件得到的字符串缓存称为缓存事件。
图7为缓存方式一对应的流程示意图,如图7所示,若客户端设备121在上报队列a1中的采集事件1时发生网络故障,则客户端设备121可以将采集事件1、采集事件2和采集事件3作为待缓存的采集事件;如此,若使用缓存方式一,则可以先使用预设压缩算法从采集事件1、采集事件2和采集事件3中抽离key和value,然后可以将所抽离的key作为模板排在数组的第一位,将抽离的value作为值排在key的后面,从而将采集事件1、采集事件2和采集事件3压缩为一个字符串缓存。
进一步地,若目标浏览器缓存机制为localStorage机制,缓存位置为test数据库,则localStorage机制可以将压缩得到的字符串缓存存储在test数据库中,等待网络恢复后重新上报给采集服务器110;相应地,采集服务器110在接收到压缩的字符串缓存后,可以使用预设压缩算法对应的解压缩算法对字符串缓存进行解压缩,得到采集事件1、采集事件2和采集事件3。
举例来说,若采集事件1、采集事件2和采集事件3的数据格式为:
[{
defined_name:"h5"
defined_value:"消费"
deviceId:"4160c4"
},
{
defined_name:"h6"
defined_value:"开户"
deviceId:"4160c4"
},
{
defined_name:"h7"
defined_value:"结单"
deviceId:"4160c4"
}]
则使用预设压缩算法可以从采集事件1、采集事件2和采集事件3中抽离出三个key(即特征项),分别为defined_name、defined_value和deviceId,采集事件1中这三个key的value(即特征项下的值)分别为h5、消费、4160c4,采集事件2中这三个key的value分别为h6、开户、4160c4,采集事件3中这三个key的value分别为h7、结单、4160c4,如此,使用预设压缩算法压缩采集事件1、采集事件2和采集事件3得到的字符串缓存为:
[[defined_name,defined_value,deviceId],[h5,消费,4160c4],[h6,开户,4160c4],[h7,结单,4160c4]]
由此可知,字符串缓存的格式为一条字符串数据缓存,该条字符串数据缓存中包含了采集事件1、采集事件2和采集事件3的全部数据。
在缓存方式一中,通过一次压缩过程将所有待缓存的采集事件压缩成一个字符串缓存,可以以较少的操作次数完成采集数据的缓存工作,且可以减少所缓存的采集数据占用的空间,降低后续重发的次数,提高重发效率。
缓存方式二
在缓存方式二中,可以使用预设压缩算法压缩每一条待缓存的采集事件,得到每一条待缓存的采集事件对应的一个字符串缓存,并可以将多条待缓存的采集事件对应的多条字符串数据缓存存储至目标浏览器缓存机制对应的存储空间。
为了便于描述,本发明实施例将每一条待缓存的采集事件对应的字符串缓存称为缓存事件。
图8为缓存方式二对应的流程示意图,如图8所示,若使用缓存方式二,针对于采集事件1、采集事件2和采集事件3中的任一采集事件,可以先使用预设压缩算法从该采集事件中抽离key和value,然后可以将所抽离的key排在数组的第一位,将抽离的value作为值排在key的后面,从而将该条采集事件压缩为一个缓存事件。进一步地,若目标浏览器缓存机制为localStorage机制,缓存位置为test数据库,则localStorage机制可以将压缩得到的多个缓存事件依次存储在test数据库中,等待网络恢复后依次重新上报给采集服务器110;相应地,采集服务器110在接收到压缩的多条缓存事件后,可以使用预设压缩算法对应的解压缩算法对每条缓存事件进行解压缩,分别得到采集事件1、采集事件2和采集事件3。
以缓存方式一中的采集事件1、采集事件2和采集事件3为例,使用预设压缩算法压缩采集事件1、采集事件2和采集事件3得到的缓存事件分别为:
[[defined_name,defined_value,deviceId],[h5,消费,4160c4]]
[[defined_name,defined_value,deviceId],[h6,开户,4160c4]]
[[defined_name,defined_value,deviceId],[h7,结单,4160c4]]
在缓存方式二中,通过分别压缩每条采集事件,可以灵活地控制每条采集事件的重发过程,避免一次上报较多的采集数据而影响浏览器的正常工作。
需要说明的是,上述仅是两种示例性的简单说明,并不构成对方案的限定,在具体实施中,压缩采集事件的数量可以由用户进行设置,比如可以先将采集事件1和采集事件2压缩成一个字符串缓存,再将采集事件3压缩成缓存事件3,或者也可以先将采集事件1压缩成缓存事件1,再将采集事件2和采集事件3压缩成字符串缓存,等等,具体不作限定。
本发明实施例中,当使用目标浏览器缓存机制将队列a1中待缓存的采集事件缓存完成后,和/或,当队列a1中的采集事件全部被上报给采集服务器110后,客户端设备121可以删除队列a1,从而可以避免队列a1无意义的占用内存空间,降低系统的性能损耗。
基于图2所示意的数据采集方法,当删除队列a1后,若客户端设备121检测到用户触发了第二预设操作,并生成新的采集事件4、采集事件5和采集事件6,则客户端设备121可以先确定是否存在已设置的用于上报采集事件的队列,若存在,则可以直接将采集事件4、采集事件5和采集事件6从已存在的队列的队尾插入已存在的队列中,若不存在,则可以创建新的队列,并可以使用新的队列存储采集事件4、采集事件5和采集事件6。本发明实施例中,由于采集事件1、采集事件2和采集事件3缓存后,队列a1被删除,因此不存在已设置的用于上报采集事件的队列,如此,客户端设备121可以创建队列a2,并可以使用队列a2存储采集事件4、采集事件5和采集事件6。具体实施中,在将采集事件4、采集事件5和采集事件6存储在队列a2之前,可以先查询目标浏览器缓存机制对应的缓存空间是否存储有缓存事件,若是,则可以先将缓存事件存储在队列a2中,再将采集事件4、采集事件5和采集事件6存储在队列a2中。
图9为使用缓存方式一缓存待缓存的采集事件对应的数据重发方法的整体流程示意图,如图9所示,若采用缓存方式一缓存采集事件1、采集事件2和采集事件3得到字符串缓存A,则在将字符串缓存A、采集事件4、采集事件5和采集事件6存储在队列a2后,字符串缓存A可以占用队列a2的位置0,采集事件4可以占用队列a2的位置1,采集事件5可以占用队列a2的位置2,采集事件6可以占用队列a2的位置3。
如图9所示,在存储完成后,游标可以指示在队列a2的初始位置0,因此客户端设备121可以先将位置0存储的字符串缓存A放置在浏览器请求队列中,经由浏览器上报给采集服务器110。若接收到采集服务器110发送的第一类型响应消息,说明字符串缓存A成功上报给采集服务器110,因此客户端设备121可以控制游标指示在队列a2的位置1,依次发送队列a2中的采集数据;相应地,若接收到采集服务器110发送的第二类型响应消息,说明字符串缓存A未能成功上报给采集服务器110,因此客户端设备121可以重新发送字符串缓存A,若重发的次数超过预设次数还未成功发送字符串缓存A,说明网络故障,因此客户端设备121可以先压缩字符串缓存A、采集事件4、采集事件5和采集事件6,然后将压缩得到的字符串缓存或缓存事件存储在目标浏览器缓存机制对应的存储空间,并可以在缓存成功后删除队列a2。其中,缓存方式不限于缓存方式一和缓存方式二。
图10为使用缓存方式二缓存待缓存的采集事件对应的数据重发方法的示意图,如图10所示,若采用缓存方式二缓存采集事件1、采集事件2和采集事件3得到缓存事件1、缓存事件2和缓存事件3,则缓存事件1可以占用队列a2的位置0,缓存事件2可以占用队列a2的位置1,缓存事件3可以占用队列a2的位置2,采集事件4可以占用队列a2的位置3,采集事件5可以占用队列a2的位置4,采集事件6可以占用队列a2的位置5。
如图10所示,在存储完成后,游标可以指示在队列a2的初始位置0,因此客户端设备121可以先将位置0存储的缓存事件1放置在浏览器请求队列中,经由浏览器上报给采集服务器110。若接收到采集服务器110发送的第一类型响应消息,说明缓存事件1成功上报给采集服务器110,因此客户端设备121可以控制游标指示在队列a2的位置1,依次发送队列a2中的缓存事件及采集数据,相应地,若接收到采集服务器110发送的第二类型响应消息,说明缓存事件1未能成功上报给采集服务器110,因此客户端设备121可以重新发送缓存事件1,若重发次数超过预设次数还未成功发送缓存事件1,说明网络故障,因此客户端设备121可以先压缩缓存事件1、缓存事件2、缓存事件3、采集事件4、采集事件5和采集事件6,再使用目标浏览器缓存机制将缓存得到的字符串缓存或缓存事件存储在目标浏览器缓存机制对应的存储空间,并可以在缓存成功后删除队列a2。其中,缓存方式不限于缓存方式一和缓存方式二。
本发明实施例中,通过缓存采集事件,并在下次上报过程中先上报缓存的采集事件再上报新的采集事件,可以保证采集服务器不遗漏采集事件,提高采集事件上报的成功率,从而提高采集服务器接收采集事件的准确性。
在一个示例中,在字符串缓存或缓存事件成功上报给采集服务器110后,客户端设备121可以从目标浏览器缓存机制对应的缓存空间删除字符串缓存或缓存事件,从而降低缓存占用的空间。其中,删除操作与上报操作可以并行执行,或者也可以等待上报操作完成后集中执行删除操作,比如可以每成功上报一个缓存事件,即可从缓存空间中删除该缓存事件,或者也可以等待队列中的事件被上报完成后,再从缓存空间中删除成功上报的缓存事件,具体不作限定。
需要说明的是,图9和图10仅是以游标为示例来描述重发采集事件的过程,并不构成对本方案的限定,本发明实施例也可以使用其它方式重发采集事件,比如先进先出的队列算法,具体不作限定。
本发明的上述实施例中,确定待缓存的采集事件后,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件。由此可知,本发明实施例支持多种浏览器缓存机制,在获取待缓存的采集事件后,通过确定与浏览器匹配的目标缓存机制,并使用匹配的目标缓存机制来缓存待缓存的采集事件,可以保证待缓存的采集事件缓存的准确性,从而可以解决现有技术由于仅设置默认的一种浏览器缓存机制而导致的缓存的采集事件乱码或无法缓存采集事件的技术问题,提高采集事件缓存的准确性。
针对上述方法流程,本发明实施例还提供一种数据处理装置,该装置的具体内容可以参照上述方法实施。
图11为本发明提供的一种数据处理装置,如图所示,该装置包括:
确定模块1101,用于确定待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件;
缓存模块1102,用于基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件。
可选地,所述确定模块1101具体用于:
获取所述浏览器的配置文件;
若所述浏览器的配置文件中包含window.localStorage对象,则确定localhost缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则确定indexDB缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.openDatabase对象,则确定WebSQL缓存机制为备选浏览器缓存机制;
若存在多个备选浏览器缓存机制,则从所述多个备选浏览器缓存机制中选择优先级最大的浏览器缓存机制作为所述目标浏览器缓存机制。
可选地,所述确定模块1101具体用于:
获取所述浏览器的配置文件;
检测所述浏览器的配置文件中是否包含window.localStorage对象,若是,则确定本地主机缓存机制为目标浏览器缓存机制;若否,则检测所述浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则确定indexDB缓存机制为目标浏览器缓存机制,若否,则检测所述浏览器的配置文件中是否包含window.openDatabase对象,若是,则确定WebSQL缓存机制为目标浏览器缓存机制,若否,则确定不存在与所述浏览器匹配的目标浏览器缓存机制。
可选地,所述确定模块1101获取所述浏览器的配置文件之前,还用于:
确定不存在用户指定的所述目标浏览器缓存机制。
可选地,所述缓存模块1102具体用于:
使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,并将所述待缓存的多条采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
可选地,所述缓存模块1102具体用于:
针对于待缓存的每条采集事件,从所述采集事件中提取得到所述采集事件在各项特征下的值;
针对于任一项特征,根据所述待缓存的多条采集事件在所述特征下的值,生成所述特征对应的特征向量;
根据各项特征对应的特征向量,组合得到所述待缓存的多条采集事件对应的字符串缓存。
可选地,所述缓存模块1102具体用于:
使用预设压缩算法压缩待缓存的任一采集事件,得到所述待缓存的每个采集事件对应的字符串缓存,并将所述待缓存的每个采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
可选地,所述装置还包括处理模块1103,所述缓存模块1102使用所述目标浏览器缓存机制缓存所述待缓存的采集事件之后,所述处理模块1103用于:
检测到用户触发所述浏览器上的第二预设操作后,在执行所述第二预设操作对应的任务时生成多条采集事件;
创建第一队列,确定所述目标浏览器缓存机制对应的存储空间中是否存储有字符串缓存,若是,则先将所述字符串缓存存储在所述第一队列中,再将所述多条采集事件依次存储在所述第一队列中;所述多条采集事件位于所述字符串缓存之后;若否,则将所述多条采集事件依次存储在所述第一队列中;
依次将所述第一队列中存储的采集数据上报给所述采集服务器。
从上述内容可以看出:本发明的上述实施例中,确定待缓存的采集事件后,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件。由此可知,本发明实施例支持多种浏览器缓存机制,在获取待缓存的采集事件后,通过确定与浏览器匹配的目标缓存机制,并使用匹配的目标缓存机制来缓存待缓存的采集事件,可以保证待缓存的采集事件缓存的准确性,从而可以解决现有技术由于仅设置默认的一种浏览器缓存机制而导致的缓存的采集事件乱码或无法缓存采集事件的技术问题,提高采集事件缓存的准确性。
基于同一发明构思,本发明实施例还提供了一种计算设备,包括至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行如图2至10中任意所述的数据处理方法。
基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行如图2至10中任意所述的数据处理方法。
基于相同的技术构思,本发明实施例提供了一种终端设备,如图12所示,包括至少一个处理器1201,以及与至少一个处理器连接的存储器1202,本发明实施例中不限定处理器1201与存储器1202之间的具体连接介质,图12中处理器1201和存储器1202之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本发明实施例中,存储器1202存储有可被至少一个处理器1201执行的指令,至少一个处理器1201通过执行存储器1202存储的指令,可以执行前述的数据处理方法中所包括的步骤。
其中,处理器1201是终端设备的控制中心,可以利用各种接口和线路连接终端设备的各个部分,通过运行或执行存储在存储器1202内的指令以及调用存储在存储器1202内的数据,从而实现数据处理。可选的,处理器1201可包括一个或多个处理单元,处理器1201可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理下发指令。可以理解的是,上述调制解调处理器也可以不集成到处理器1201中。在一些实施例中,处理器1201和存储器1202可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器1201可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合数据处理方法实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1202作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器1202可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器1202是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器1202还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于相同的技术构思,本发明实施例提供了一种后端设备,如图13所示,包括至少一个处理器1301,以及与至少一个处理器连接的存储器1302,本发明实施例中不限定处理器1301与存储器1302之间的具体连接介质,图13中处理器1301和存储器1302之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本发明实施例中,存储器1302存储有可被至少一个处理器1301执行的指令,至少一个处理器1301通过执行存储器1302存储的指令,可以执行前述的数据处理方法中所包括的步骤。
其中,处理器1301是后端设备的控制中心,可以利用各种接口和线路连接后端设备的各个部分,通过运行或执行存储在存储器1302内的指令以及调用存储在存储器1302内的数据,从而实现数据处理。可选的,处理器1301可包括一个或多个处理单元,处理器1301可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、应用程序等,调制解调处理器主要对接收到的指令进行解析以及对接收到的结果进行解析。可以理解的是,上述调制解调处理器也可以不集成到处理器1301中。在一些实施例中,处理器1301和存储器1302可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器1301可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合数据处理方法实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器1302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器1302可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器1302是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器1302还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (14)

1.一种数据处理方法,其特征在于,所述方法包括:
确定待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件;
基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件;
检测到用户触发所述浏览器上的第二预设操作后,在执行所述第二预设操作对应的任务时生成多条采集事件;
创建第一队列,确定所述目标浏览器缓存机制对应的存储空间中是否存储有字符串缓存,若是,则先将所述字符串缓存存储在所述第一队列中,再将所述多条采集事件依次存储在所述第一队列中;所述多条采集事件位于所述字符串缓存之后;若否,则将所述多条采集事件依次存储在所述第一队列中;
依次将所述第一队列中存储的采集数据上报给所述采集服务器。
2.根据权利要求1所述的方法,其特征在于,所述确定与所述浏览器匹配的目标浏览器缓存机制,包括:
获取所述浏览器的配置文件;
若所述浏览器的配置文件中包含window.localStorage对象,则确定本地主机缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则确定indexDB缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.openDatabase对象,则确定WebSQL缓存机制为备选浏览器缓存机制;
若存在多个备选浏览器缓存机制,则从所述多个备选浏览器缓存机制中选择优先级最大的浏览器缓存机制作为所述目标浏览器缓存机制。
3.根据权利要求1所述的方法,其特征在于,所述确定与所述浏览器匹配的目标浏览器缓存机制,包括:
获取所述浏览器的配置文件;
检测所述浏览器的配置文件中是否包含window.localStorage对象,若是,则确定本地主机缓存机制为目标浏览器缓存机制;若否,则检测所述浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则确定indexDB缓存机制为目标浏览器缓存机制,若否,则检测所述浏览器的配置文件中是否包含window.openDatabase对象,若是,则确定WebSQL缓存机制为目标浏览器缓存机制,若否,则确定不存在与所述浏览器匹配的目标浏览器缓存机制。
4.根据权利要求1所述的方法,其特征在于,所述使用所述目标浏览器缓存机制缓存所述待缓存的采集事件,包括:
使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,并将所述待缓存的多条采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
5.根据权利要求4所述的方法,其特征在于,所述使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,包括:
针对于待缓存的每条采集事件,从所述采集事件中提取得到所述采集事件在各项特征下的值;
针对于任一项特征,根据所述待缓存的多条采集事件在所述特征下的值,生成所述特征对应的特征向量;
根据各项特征对应的特征向量,组合得到所述待缓存的多条采集事件对应的字符串缓存。
6.根据权利要求1所述的方法,其特征在于,所述使用所述目标浏览器缓存机制缓存所述采集事件,包括:
使用预设压缩算法压缩待缓存的任一采集事件,得到待缓存的每个采集事件对应的字符串缓存,并将所述待缓存的每个采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
7.一种数据处理装置,其特征在于,所述装置包括:
确定模块,用于确定待缓存的采集事件;所述待缓存的采集事件包括多个采集事件中未成功上报给采集服务器的采集事件,所述多个采集事件为检测到用户触发浏览器上的第一预设操作后,在执行所述第一预设操作对应的任务时生成的,每个采集事件用于记录执行所述任务中的每个子任务的事件;
缓存模块,用于基于预设的浏览器与浏览器缓存机制之间的映射关系,确定与所述浏览器匹配的目标浏览器缓存机制,并使用所述目标浏览器缓存机制缓存所述待缓存的采集事件;
处理模块,检测到用户触发所述浏览器上的第二预设操作后,在执行所述第二预设操作对应的任务时生成多条采集事件;创建第一队列,确定所述目标浏览器缓存机制对应的存储空间中是否存储有字符串缓存,若是,则先将所述字符串缓存存储在所述第一队列中,再将所述多条采集事件依次存储在所述第一队列中;所述多条采集事件位于所述字符串缓存之后;若否,则将所述多条采集事件依次存储在所述第一队列中;依次将所述第一队列中存储的采集数据上报给所述采集服务器。
8.根据权利要求7所述的装置,其特征在于,所述确定模块具体用于:
获取所述浏览器的配置文件;
若所述浏览器的配置文件中包含window.localStorage对象,则确定localhost缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.indexedDB对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,则确定indexDB缓存机制为备选浏览器缓存机制;若所述浏览器的配置文件中包含window.openDatabase对象,则确定WebSQL缓存机制为备选浏览器缓存机制;
若存在多个备选浏览器缓存机制,则从所述多个备选浏览器缓存机制中选择优先级最大的浏览器缓存机制作为所述目标浏览器缓存机制。
9.根据权利要求7所述的装置,其特征在于,所述确定模块具体用于:
获取所述浏览器的配置文件;
检测所述浏览器的配置文件中是否包含window.localStorage对象,若是,则确定本地主机缓存机制为目标浏览器缓存机制;若否,则检测所述浏览器的配置文件中是否包含系统浏览器数据库对象、window.IDBTransaction对象和window.IDBKeyRange对象中的任意一项或任意多项,若是,则确定indexDB缓存机制为目标浏览器缓存机制,若否,则检测所述浏览器的配置文件中是否包含window.openDatabase对象,若是,则确定WebSQL缓存机制为目标浏览器缓存机制,若否,则确定不存在与所述浏览器匹配的目标浏览器缓存机制。
10.根据权利要求7所述的装置,其特征在于,所述缓存模块具体用于:
使用预设压缩算法压缩待缓存的多条采集事件,得到所述待缓存的多条采集事件对应的字符串缓存,并将所述待缓存的多条采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
11.根据权利要求10所述的装置,其特征在于,所述缓存模块具体用于:
针对于待缓存的每条采集事件,从所述采集事件中提取得到所述采集事件在各项特征下的值;
针对于任一项特征,根据所述待缓存的多条采集事件在所述特征下的值,生成所述特征对应的特征向量;
根据各项特征对应的特征向量,组合得到所述待缓存的多条采集事件对应的字符串缓存。
12.根据权利要求7所述的装置,其特征在于,所述缓存模块具体用于:
使用预设压缩算法压缩待缓存的任一采集事件,得到所述待缓存的每个采集事件对应的字符串缓存,并将所述待缓存的每个采集事件对应的字符串数据缓存存储至所述目标浏览器缓存机制对应的存储空间。
13.一种计算设备,其特征在于,包括至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行权利要求1~6任一权利要求所述的方法。
14.一种计算机可读存储介质,其特征在于,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行权利要求1~6任一权利要求所述的方法。
CN201911031641.2A 2019-10-28 2019-10-28 一种数据处理方法及装置 Active CN110795166B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911031641.2A CN110795166B (zh) 2019-10-28 2019-10-28 一种数据处理方法及装置
PCT/CN2020/119040 WO2021082859A1 (zh) 2019-10-28 2020-09-29 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911031641.2A CN110795166B (zh) 2019-10-28 2019-10-28 一种数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN110795166A CN110795166A (zh) 2020-02-14
CN110795166B true CN110795166B (zh) 2021-08-20

Family

ID=69441554

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911031641.2A Active CN110795166B (zh) 2019-10-28 2019-10-28 一种数据处理方法及装置

Country Status (2)

Country Link
CN (1) CN110795166B (zh)
WO (1) WO2021082859A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110795166B (zh) * 2019-10-28 2021-08-20 深圳前海微众银行股份有限公司 一种数据处理方法及装置
CN111880947B (zh) * 2020-07-20 2023-12-15 中国银联股份有限公司 一种数据传输方法及装置
CN113382056A (zh) * 2021-06-07 2021-09-10 北京博睿宏远数据科技股份有限公司 数据上报方法、装置、设备、存储介质及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480277A (zh) * 2017-08-22 2017-12-15 北京京东尚科信息技术有限公司 用于网站日志采集的方法及装置
CN110298004A (zh) * 2019-06-06 2019-10-01 阿里巴巴集团控股有限公司 一种目标对象的缓存管理方法、系统、装置及电子设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060031382A1 (en) * 2004-06-04 2006-02-09 Arvind Pradhakar System and method for translating fully qualified domain name access in a browser environment
CN103294700B (zh) * 2012-02-24 2018-01-12 腾讯科技(北京)有限公司 一种跨浏览器的数据本地存储方法和装置
JP2015207027A (ja) * 2012-08-31 2015-11-19 パナソニック株式会社 ウェブページキャッシュ装置、ウェブページキャッシュ方法、プログラム、および集積回路
CN104657358B (zh) * 2013-11-15 2018-11-23 腾讯科技(深圳)有限公司 实现网页程序离线缓存的方法和系统
CN103618799B (zh) * 2013-12-04 2018-11-30 北京奇安信科技有限公司 浏览器缓存处理方法、系统及代理服务器
CN105045539B (zh) * 2015-08-20 2018-11-23 百度在线网络技术(北京)有限公司 数据离线存储的控制方法和装置
CN106874293B (zh) * 2015-12-11 2020-12-29 北京国双科技有限公司 一种数据处理方法及装置
CN107688568A (zh) * 2016-08-03 2018-02-13 腾讯科技(深圳)有限公司 基于网页访问行为记录的采集方法及装置
CN107025260A (zh) * 2016-12-27 2017-08-08 阿里巴巴集团控股有限公司 实现Web离线存储的方法、装置及电子设备
CN109815433A (zh) * 2019-01-11 2019-05-28 平安科技(深圳)有限公司 浏览器本地存储方法及装置、存储介质及电子设备
CN110795166B (zh) * 2019-10-28 2021-08-20 深圳前海微众银行股份有限公司 一种数据处理方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480277A (zh) * 2017-08-22 2017-12-15 北京京东尚科信息技术有限公司 用于网站日志采集的方法及装置
CN110298004A (zh) * 2019-06-06 2019-10-01 阿里巴巴集团控股有限公司 一种目标对象的缓存管理方法、系统、装置及电子设备

Also Published As

Publication number Publication date
CN110795166A (zh) 2020-02-14
WO2021082859A1 (zh) 2021-05-06

Similar Documents

Publication Publication Date Title
CN110086666B (zh) 一种告警方法、装置及系统
WO2021082858A1 (zh) 一种数据采集方法及装置
CN109034993B (zh) 对账方法、设备、系统及计算机可读存储介质
CN110795166B (zh) 一种数据处理方法及装置
CN109240886B (zh) 异常处理方法、装置、计算机设备以及存储介质
CN110428127B (zh) 自动化分析方法、用户设备、存储介质及装置
CN106815254B (zh) 一种数据处理方法和装置
CN111813573B (zh) 管理平台与机器人软件的通信方法及其相关设备
CN113687974B (zh) 客户端日志处理方法、装置及计算机设备
CN110647447B (zh) 用于分布式系统的异常实例检测方法、装置、设备和介质
CN110019873B (zh) 人脸数据处理方法、装置及设备
CN111552633A (zh) 接口的异常调用测试方法、装置、计算机设备及存储介质
CN113254320A (zh) 记录用户网页操作行为的方法及装置
CN108509322B (zh) 避免过度回访的方法、电子装置及计算机可读存储介质
CN110928851A (zh) 处理日志信息的方法、装置、设备及存储介质
CN111125180A (zh) 库存数据的统计方法及装置、服务器及分布式购买系统
CN113360210A (zh) 数据对账方法、装置、计算机设备和存储介质
CN102906740B (zh) 压缩数据记录和处理压缩数据记录的方法和系统
CN111367934A (zh) 数据一致性的检验方法、装置、服务器和介质
CN112988812B (zh) 库存数据的处理方法、装置、设备及存储介质
CN115297104A (zh) 文件上传方法、装置、电子设备和存储介质
CN112035205A (zh) 数据处理方法、装置、设备和存储介质
CN113852610A (zh) 报文处理方法、装置、计算机设备和存储介质
CN113850664A (zh) 一种数据异常检测方法及数据上报服务
CN111770080A (zh) 一种设备指纹的恢复方法及装置

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