CN112860739A - 热点数据的处理方法及装置、业务处理***、存储介质 - Google Patents

热点数据的处理方法及装置、业务处理***、存储介质 Download PDF

Info

Publication number
CN112860739A
CN112860739A CN201911173799.3A CN201911173799A CN112860739A CN 112860739 A CN112860739 A CN 112860739A CN 201911173799 A CN201911173799 A CN 201911173799A CN 112860739 A CN112860739 A CN 112860739A
Authority
CN
China
Prior art keywords
data
hot spot
time
cache queue
timing
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.)
Pending
Application number
CN201911173799.3A
Other languages
English (en)
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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201911173799.3A priority Critical patent/CN112860739A/zh
Publication of CN112860739A publication Critical patent/CN112860739A/zh
Pending legal-status Critical Current

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/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/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开涉及计算机技术领域,公开了一种热点数据的处理方法及装置、业务处理***、存储介质和计算机设备。该方法包括:数据发现模块周期性地获取热点数据,并将所述热点数据发送至缓存队列;数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存;基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。本公开既可以将统计后的缓存队列实时推送至当前业务***进行缓存,又可以使订阅缓存队列的其它业务***基于该缓存队列,进行相关业务处理,使得***中的热点数据透明化,有利于实时保护下游业务***,提高整个***的性能。

Description

热点数据的处理方法及装置、业务处理***、存储介质
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种热点数据的处理方法、热点数据的处理装置、业务处理***、计算机存储介质和电子设备。
背景技术
随着互联网及计算机技术的高速发展,线上业务和服务不断攀升,越来越多的热点数据(例如事件、新闻、话题、物品等)通过互联网产生和传播,而随着业务量和服务量的增加,常常会出现大量的用户同时访问同一数据对象的现象,热点数据的访问量瞬间增大占用服务器处理资源导致数据错乱、请求超时,甚至服务器不可用。
在实现本公开过程中发明人发现,通过多级缓存机制减少单台热点服务器的瞬时吞吐量,存在延迟加载的问题,并且热点数据的隔离也使得***整体性能低,响应速度慢,用户体验差。
需要说明的是,在上述背景技术部分发明的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开实施例的目的在于提供一种热点数据的处理方法、热点数据的处理装置、业务处理***、计算机存储介质和计算机设备,进而至少在一定程度上避免了相关技术中热点数据的海量并发导致的热点数据处理效率低、服务器崩溃等问题。为实现以上技术效果,本公开采用如下技术方案。
本公开实施例的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开实施例的一个方面,提供一种热点数据的处理方法,包括:数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存;基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。
在本公开的一种示例性实施例中,所述热点数据包括实时热点数据和定时热点数据;所述数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列,包括:从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据;获取热点页面的访问数据,并将所述访问数据确定为实时热点数据;获取配置的定时任务,并将所述定时任务对应的数据对象确定为定时热点数据;根据获得的所述实时热点数据和所述定时热点数据,形成具有预定数据格式的热点数据,并将具有所述预定格式的热点数据发送至所述缓存队列。
在本公开的一种示例性实施例中,所述从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据,包括:数据发现模块从所述用户浏览记录信息和所述各业务***的访问信息中获取各数据对象对应的统一资源定位符,以及各所述数据对象对应的统一资源定位符的访问次数;将所述访问次数大于次数阈值的统一资源定位符对应的数据对象确定为所述实时热点数据。
在本公开的一种示例性实施例中,根据获得的所述实时热点数据,形成具有预定格式的热点数据,包括:获取所述实时热点数据对应的标识信息;根据所述实时热点数据对应的统一资源定位符,为所述实时热点数据匹配对应的数据类型;在匹配的数据类型下,根据所述实时热点数据对应的标识信息,确定所述实时热点数据的数据缓存时间;根据所述标识信息、所述数据类型、所述数据缓存时间及热点类型,形成具有第一数据格式的实时热点数据。
在本公开的一种示例性实施例中,根据获得的所述定时热点数据,形成具有预定格式的热点数据,包括:获取所述定时热点数据对应的标识信息;根据所述定时热点数据对应的统一资源定位符,为所述定时热点数据匹配对应的数据类型;在匹配的数据类型下,根据所述定时热点数据对应的标识信息,确定所述定时热点数据的定时时间;根据所述标识信息、所述数据类型、所述定时时间及热点类型,形成具有第二数据格式的定时热点数据。
在本公开的一种示例性实施例中,所述数据推送模块将所述缓存队列中的数据推送至当前业务***,包括:基于所述缓存队列中的定时热点数据的定时时间,将所述定时热点数据在目标时间推送至所述当前业务***,其中,所述目标时间早于所述定时时间;将所述实时热点数据实时推送至所述当前业务***。
在本公开的一种示例性实施例中,所述方法还包括:当所述缓存队列的长度大于长度阈值时,按照预设算法对所述缓存队列中的热点数据进行替换,以得到更新的缓存队列。
根据本公开实施例的一个方面,提供一种热点数据的处理装置,所述热点数据的处理装置包括:数据发现模块,用于周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;数据推送模块,用于将所述缓存队列推送至当前业务***,以使所述当前业务***根据所述缓存队列中的热点数据更新对应的热点缓存;订阅分发模块,用于基于其它业务***对所述缓存队列的订阅,向所述其它业务***提供所述缓存队列中的热点数据。
根据本公开实施例的一个方面,提供一种业务处理***,所述***包括:数据发现***,用于执行如上任一项所述的热点数据处理方法;数据缓存模块,用于在当前业务***接收所述数据发现***提供的缓存队列中的数据后,根据所述缓存队列中的数据更新对应的热点缓存;数据订阅模块,用于为其它业务***订阅所述缓存队列,以使所述其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
在本公开的一种示例性实施例中,所述***还包括:第一业务处理模块,用于使当前业务***根据更新后的热点缓存处理对应的当前业务请求;第二业务处理模块,用于使其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
根据本公开实施例的一个方面,提供一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的热点数据的处理方法。
根据本公开实施例的一个方面,提供一种计算机设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的热点数据的处理方法。
本公开实施例中的热点数据的处理方法,发现热点数据并进行统计形成缓存队列,同时将缓存队列推送至当前业务***进行缓存,以及将缓存队列提供给其它业务***。一方面,将周期性发现和统计的热点数据以缓存队列的形式提供给相关业务***,使得相关业务***可以基于该缓存热点数据进行业务处理,有效提高热点数据的处理效率;另一方面,通过数据订阅的方式,将上游业务***的热点数据透明化至下游业务***,进而有利于对下游业务***进行热点保护,有利于加速整个***的性能,用户体验好。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:
图1示出了根据本公开示例性实施例的热点数据的处理方法的流程图;
图2示出了根据本公开示例性实施例的数据发现模块统计热点数据的***架构图;
图3示出了根据本公开示例性实施例的数据发现模块统计热点数据,并将热点数据发送至缓存队列的流程图;
图4示出了根据本公开示例性实施例的根据获得的实时热点数据形成具有第一数据格式的热点数据的流程图;
图5示出了根据本公开示例性实施例的根据获得的定时热点数据形成具有第一数据格式的热点数据的流程图;
图6示出了根据本公开示例性实施例的热点数据的处理装置的框图;
图7示出了根据本公开示例性实施例的业务处理***的架构图;
图8示出了根据本公开示例性实施例的计算机***的结构示意图。
在附图中,相同或对应的标号表示相同或对应的部分。
具体实施方式
现在将参考附图更全面地描述示例性实施方式。然而,示例性实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施例使得本公开将更加全面和完整,并将示例性实施方式的构思全面地传达给本领域的技术人员。图中相同的附图标记表示相同或类似的结构,因而将省略它们的详细描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在本领域的相关技术中,常常通过缓存的方式解决热点问题,但热点数据的高并发导致单台服务器瞬间吞吐量过高,进而导致服务器不可用,其中,通过在整个***架构的不同***层级进行数据缓存的多级缓存机制,虽然可以减少单台服务器瞬间流量,但是延迟加载的方式在相关业务场景下(例如商品秒杀、抢购等)存在局限性。
通常需要进行高并发热点数据处理的场景有很多,例如商品秒杀、抢购、热点话题或新闻发布,等等。基于此,在本公开的示例性实施例中,首先提供了一种热点数据的处理方法,参考图1所示,该热点数据的处理方法包括以下步骤:
步骤S110:数据发现模块周期性地获取热点数据,并将所述热点数据发送至缓存队列;
步骤S120:数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存;
步骤S130:基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。
根据本公开示例性实施例中的热点数据的处理方法,一方面,将周期性发现和统计的热点数据以缓存队列的形式提供给相关业务***,使得相关业务***可以基于该缓存热点数据进行业务处理,有效提高热点数据的处理效率;另一方面,通过数据订阅的方式,将上游业务***的热点数据透明化至下游业务***,进而有利于对下游业务***进行热点保护,有利于加速整个***的性能,用户体验好。
下面结合图1对本公开示例实施例中的热点数据的处理方法进行详细阐述。
在步骤S110中,数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列。
在本公开的示例性实施例中,热点数据为用户的热点请求对应的数据,例如访问量较高的图片、新闻或商品等;热点数据的热点类型包括定时热点数据和实时热点数据,其中,定时热点数据为可以***的热点数据,包括提前配置的定时任务对应的数据对象,如在管理后台编辑的定时任务所对应的数据对象,如20点开始秒杀的某个商品,等等;实时热点数据为不能被***到的热点数据,是***在运行的过程中产生的,包括但不限于用户浏览记录信息和各个业务***的访问信息中的数据对象、热点页面的访问数据,等等。基于此,图2示出了数据发现模块统计热点数据的***架构图,由图2可知,数据发现模块统计热点的数据来源可以包括但不限于用户浏览记录1、业务***的访问记录2、热点页面3及管理后台编辑的定时任务4等,本公开包括但不限于上述热点数据的来源。
进一步的,图3示出了数据发现模块统计热点数据,并将获得的热点数据发送至缓存队列的流程图,如图3可知,该过程包括:
在步骤S310中,从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据。
在本公开的示例性实施例中,可以从用户浏览信息记录中,识别实时热点数据。具体而言,首先数据发现模块从用户浏览记录信息和各业务***的访问信息中获取各数据对象对应的URL(Uniform Resource Location,统一资源定位符),以及各数据对象对应的URL的访问次数;然后,将访问次数大于次数阈值的URL对应的数据对象确定为实时热点数据。
举例而言,在用户访问某个网页的时候,请求首先进入Nginx(engine x,网页服务器)接入层,在将请求发送至后端的当前业务***时,首先数据发现模块获取该网页对应的URL,然后数据发现模块会统计该URL的访问次数,并将该访问次数与次数阈值进行对比,若访问次数大于次数阈值,则将该URL对应的数据对象确定为实时热点数据。其中,可以按照预设的时间窗口统计URL的访问次数,例如可以以秒级窗口进行统计,基于此可进一步确保获得的热点数据被实时更新。
相应的,可以从各个业务***的访问信息中识别实时热点数据,其中业务***例如包括物品详情页、物品列表、购物车等。具体而言,首先数据发现模块获取该些***中的访问数据,并统计访问数据对应的URL的访问次数;然后,将访问次数与次数阈值进行对比,若访问次数大于次数阈值,则将该URL对应的访问数据确定为实时热点数据。当然,从各个业务***的访问信息中识别实时热点数据也可以按照预设的时间窗口进行URL的统计。
在步骤S320中,获取热点页面的访问数据,并将所述访问数据确定为实时热点数据;
在本公开的示例性实施例中,热点页面为受关注程度高的网页,通常为用户访问一个网站时所看到的首个页面,用于吸引访问者的注意,包括但不限于网页首页、列表页第一页、热点搜索关键词搜索第一页、首页配置的广告页和活动首页内容中的访问对象,由此可知,热点页面通常一定程度上就是热点数据,因此可以通过爬虫***爬取该些页面,以作为实时热点数据,其中爬虫***为按照一定的规则自动抓取万维网信息的程序或脚本。
在步骤S330中,获取配置的定时任务,并将所述定时任务对应的数据对象确定为定时热点数据。
在本公开的示例性实施例中,定时任务为管理后台根据实际业务需求配置的相关活动任务,例如预约信息发布、预约商品、秒杀活动、抢购活动等,举例而言,商户为创收会推出一些限时秒杀活动,为了争抢到秒杀活动中的低价商品,在短时间内会有大量的用户向该商户购买商品,从而在服务器产生针对该商户的大量交易数据,通常该些活动一定程度上就是热点,因此数据发现模块将该秒杀活动对应的数据对象确定为定时热点数据。
基于步骤S310至步骤S330,通过数据发现模块可以实时发现并统计热点数据,以便于实时更新当前的热点情况,以便于在大量请求到来时,能基于提前获得的热点数据进行热点保护、业务请求处理等,进而有效提高热点数据的处理效率。
在步骤S340中,根据获得的所述实时热点数据和所述定时热点数据,形成具有预定格式的热点数据,并将具有所述预定格式的数据发送至所述缓存队列。
在本公开的示例性实施例中,为了方便后续根据获得的缓存队列进行热点数据的处理和保护,根据获得的实时热点数据和定时热点数据形成具有预定格式的热点数据,并将具有预定格式的数据发送至缓存队列。
图4示出了根据获得的实时热点数据形成具有第一数据格式的热点数据的流程图,参照图4所示,该过程包括如下步骤:
在步骤S410中,获取实时热点数据对应的标识信息。
在本公开的示例性实施例中,基于获得的实时热点数据,确定该实时热点数据的URL对应的数据对象的唯一标识信息。其中,标识信息例如为数字、字母或其它字符的组合,例如库存对应的标识信息为123,商品对应的标识信息为abc,等等,本公开对此不做特殊限定。
在步骤S420中,根据实时热点数据对应的统一资源定位符,为实时热点数据匹配对应的数据类型。
在本公开的示例性实施例中,不同类型的数据类型对应于不同的统一资源定位符,可以基于预先配置的统一资源定位符与数据类型的对应关系,为实时热点数据匹配对应的数据类型。其中,数据类型包括但不限于物品、库存、价格,当然,具体的数据类型还可以根据实际需求选择,例如还可以为新闻、话题等,例如URL为<newsgroup-name>对应的数据类型为新闻,等等,本公开对比不做特殊限定。
在步骤S430中,在匹配的数据类型下,根据实时热点数据对应的标识信息,确定实时热点数据的数据缓存时间。
在本公开的示例性实施例中,数据缓存时间为数据的生存时间,超过数据缓存时间的实时热点数据将失效。在确定实时热点数据对应的数据类型后,进一步的,在该数据类型对应的数据缓存时间中,确定与实时热点数据的标识信息对应的数据缓存时间。举例而言,若确定实时热点数据对应的数据类型为商品,则根据预设的商品标识信息与数据缓存时间的对应关系,确定该实时热点数据的商品标识信息对应的数据缓存时间。其中,数据缓存时间可以根据实际数据类型和业务需要提前预设,例如可以为2s,5s,等等。
在可选的实施例中,还可以基于标识信息与数据缓存时间的对应关系,直接根据实时热点数据对应的标识信息确定对应的数据缓存时间,本公开包括但不限于上述的获取数据缓存时间的方式。
基于实时热点数据的数据缓存时间,超过数据缓存时间则失效,一定程度上可以确保实时热点数据的动态更新,便于对热点的动态保护。
在步骤S440中,根据标识信息、数据类型、数据缓存时间及热点类型,形成具有第一数据格式的实时热点数据。
在本公开的示例性实施例中,按照预定的数据格式,将实时热点数据形成具有标识信息、数据类型、数据缓存时间及热点类型的热点数据,例如,格式如[标识信息,热点类型,数据类型,缓存时间],将具有预定的数据格式的热点数据发送至缓存列队后,在缓存列队中将该实时热点数据进行缓存。
图5示出了根据获得的定时热点数据形成具有第二数据格式的热点数据的流程图,参照图5所示,该过程包括如下步骤:在步骤S510中,获取定时热点数据对应的标识信息;在步骤S520中,根据定时热点数据对应的统一资源定位符,为定时热点数据匹配对应的数据类型;在步骤S530中,在匹配的数据类型下,根据定时热点数据对应的标识信息,确定定时热点数据的定时时间,其中,定时时间为该热点可能瞬间被访问的时间,通常在定时时间前的目标时间将定时热点数据进行推送;在步骤S540中,根据标识信息、热点类型、数据类型及定时时间,形成具有第二数据格式的定时热点数据,其具体形成过程可参照上述生成具有第一数据格式的定时热点数据的描述,本公开对此不再赘述。
进一步的,将数据发现模块获得的热点数据发布至缓存队列,以便于在大量请求访问时,能基于提前获得的缓存队列中的热点数据进行热点保护、业务请求处理等。
可选的,为了避免定时热点数据的请求对其它实时热点请求造成影响,数据发现模块还可以将获得的热点数据根据热点类型推送至不同的缓存队列,可以将实时热点数据推送至第一缓存队列,定时热点数据推送第二缓存队列,进而将实时热点数据和定时热点数据进行隔离;可选的,数据发现模块还可以根据数据类型将热点数据推送至不同的缓存队列中,例如库存数据推送至第一缓存队列,价格数据推送至第二缓存队列,等等,当然,还可以根据实际业务操作,选择将热点数据推送至不同的缓存队列,本公开对此不做特殊限定。
此外,当缓存队列的长度大于长度阈值时,按照预设算法对缓存队列中的热点数据进行替换,以得到更新的缓存队列。例如通过LRU(Least Recently Used,最近最少使用)算法将缓存队列中的热点数据进行淘汰。具体的,当需要淘汰一个热点数据时,选择现有热点数据中自上次被访问以来所经历时间最大的进行淘汰,当然,也可以选择其它方法对超出长度阈值的缓存队列进行更新,本公开对此不做具体限定。
在步骤S120中,数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存。
在本公开的示例性实施例中,通过数据推送模块将缓存队列中的数据推送至当前业务***,其中,当前业务***例如可以为用户当前请求的页面,由于当前业务***已根据缓存队列中的数据更新对应的热点缓存,在接收到用户请求时,便可直接加载请求对应的热点数据,提高请求响应效率。其中,对于定时热点数据,可以基于缓存队列中的定时热点数据的定时时间,将定时热点数据在目标时间推送至当前业务***,其中,所述目标时间早于所述定时时间,例如定时时间为20点,则可以在19点58分将定时热点数据推送至当前业务***;对于实时热点数据,可以将实时热点数据实时推送至当前业务***。
在步骤S130中,基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。
在本公开的示例性实施例中,其它业务***区别于当前业务***,例如可以为当前业务***在同一交易链路的其它业务***;举例而言,若当前业务***为商品详情页,则其它业务***可以为购物车、交易、优惠、库存和物流等。其它业务***可以通过业务订阅模块订阅缓存列队,则订阅分发模块将向对应的业务***提供缓存队列中的热点数据,进而其它业务***可以预加载热点数据。基于该过程,其它业务***可以清楚知道哪些数据会被频繁调用并进行预加载,进而做好热点保护。
举例而言,通常在线业务***之间是相互关联的,例如用户访问了商品详情页,则接下来可能会加入购物车并结算,因此,对于购物车或结算***可以基于订阅的缓存队列中的热点数据,清楚知道上游业务***(商品详情页)调用了哪些数据,则购物车或结算***可以预加载该些数据,从而在请求到来时,快速响应,提高***整体性能。
综上可知,通过多维度的数据来源对热点数据进行统计,并将统计获得的数据发布至缓存队列,既可以将缓存队列推送至当前业务***进行热点缓存,以可以通过其它业务***的订阅,向其提供缓存队列,进而使得热点数据在各个***间的透明化,便于提高热点数据的处理效率。
此外,在本公开的示例性实施例中,还提供了一种热点数据的处理装置。参考图6所示,该热点数据的处理装置600包括数据发现模块610、数据推送模块620和订阅分发模块630。具体地,
数据发现模块610,用于周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;
数据推送模块620,用于将所述缓存队列推送至当前业务***,以使所述当前业务***根据所述缓存队列中的热点数据更新对应的热点缓存;
订阅分发模块630,用于基于其它业务***对所述缓存队列的订阅,向所述其它业务***提供所述缓存队列中的热点数据。
在本公开的一示例性实施例中,所述热点数据包括实时热点数据和定时热点数据;所述数据发现模块可以包括:
第一实时热点获取单元,用于从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据;
第二实时热点获取单元,获取热点页面的访问数据,并将所述访问数据确定为实时热点数据;
定时热点获取单元,用于获取配置的定时任务,并将所述定时任务对应的数据对象确定为定时热点数据;
数据推送单元,用于根据获得的所述实时热点数据和所述定时热点数据,形成具有预定格式的热点数据,并将具有所述预定格式的数据发送至所述缓存队列。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
确定单元,用于将所述访问次数大于次数阈值的统一资源定位符对应的数据对象确定为所述实时热点数据。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
标识信息获取单元,用于获取所述热点数据对应的标识信息;
数据类型匹配单元,用于根据所述热点数据对应的统一资源定位符,为所述热点数据匹配对应的数据类型。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
数据缓存时间获取单元,用于在匹配的数据类型下,根据所述实时热点数据对应的标识信息,确定所述实时热点数据的数据缓存时间。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
定时时间获取单元,用于在匹配的数据类型下,根据所述定时热点数据对应的标识信息,确定所述定时热点数据的定时时间。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
第一数据形成单元,用于根据所述标识信息、所述数据类型、所述数据缓存时间及热点类型,形成具有第一数据格式的实时热点数据。
在本公开的一示例性实施例中,所述数据发现模块还可以包括:
第二数据形成单元,用于根据所述标识信息、所述数据类型、所述定时时间及热点类型,形成具有第二数据格式的定时热点数据。
在本公开的一示例性实施例中,所述数据推送模块可以包括:
定时推送单元,用于基于所述缓存队列中的定时热点数据的定时时间,将所述定时热点数据在目标时间推送至所述当前业务***,其中,所述目标时间早于所述定时时间;
实时推送单元,用于将所述实时热点数据实时推送至所述当前业务***。
在本公开的一示例性实施例中,所述装置还包括:
队列更新模块,用于当所述缓存队列的长度大于长度阈值时,按照预设算法对所述缓存队列中的热点数据进行替换,以得到更新的缓存队列。
需要注意的是,上述附图中所示的框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
此外,在本公开的示例性实施例中,还提供了一种业务处理***,所述业务处理***700包括:
数据发现***710,用于执行本公开示例性实施例中的热点数据的处理方法;
数据缓存模块720,用于在当前业务***接收所述数据发现***提供的缓存队列中的数据时,根据所述缓存队列中的数据更新对应的热点缓存;
数据订阅模块730,用于为其它业务***订阅所述缓存队列,以使所述其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
在本公开的一示例性实施例中,所述***还包括:
第一业务处理模块,用于使当前业务***根据更新后的热点缓存处理对应的当前业务请求;
第二业务处理模块,用于使其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
图8是根据一示例性实施方式示出的一种计算机***的结构示意图。需要说明的是,图8示出的计算机***仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图8所示,计算机***800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序,或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有***800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的***中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括数据发现模块、数据推送模块和订阅分发模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,数据缓存模块还可以被描述为“根据缓存队列中的数据更新对应的热点缓存的模块”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序。当上述一个或者多个程序被一个该设备执行时,使得该设备包括:
数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;
数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存;
基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。
以上具体地示出和描述了本公开的示例性实施方式。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (12)

1.一种热点数据的处理方法,其特征在于,包括:
数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;
数据推送模块将所述缓存队列中的数据推送至当前业务***,以使所述当前业务***根据所述缓存队列中的数据更新对应的热点缓存;
基于其它业务***对所述缓存队列的订阅,订阅分发模块向所述其它业务***提供所述缓存队列中的热点数据。
2.根据权利要求1所述的热点数据的处理方法,其特征在于,所述热点数据包括实时热点数据和定时热点数据;
所述数据发现模块周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列,包括:
从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据;
获取热点页面的访问数据,并将所述访问数据确定为实时热点数据;
获取配置的定时任务,并将所述定时任务对应的数据对象确定为定时热点数据;
根据获得的所述实时热点数据和所述定时热点数据,形成具有预定格式的热点数据,并将具有所述预定格式的热点数据发送至所述缓存队列。
3.根据权利要求2所述的热点数据的处理方法,其特征在于,所述从用户浏览记录信息和各业务***的访问信息中,识别实时热点数据,包括:
数据发现模块从所述用户浏览记录信息和所述各业务***的访问信息中获取各数据对象对应的统一资源定位符,以及各所述数据对象对应的统一资源定位符的访问次数;
将所述访问次数大于次数阈值的统一资源定位符对应的数据对象,确定为所述实时热点数据。
4.根据权利要求2所述的热点数据的处理方法,其特征在于,根据获得的所述实时热点数据,形成具有预定格式的热点数据,包括:
获取所述实时热点数据对应的标识信息;
根据所述实时热点数据对应的统一资源定位符,为所述实时热点数据匹配对应的数据类型;
在匹配的数据类型下,根据所述实时热点数据对应的标识信息,确定所述实时热点数据的数据缓存时间;
根据所述标识信息、所述数据类型、所述数据缓存时间及热点类型,形成具有第一数据格式的实时热点数据。
5.根据权利要求2所述的热点数据的处理方法,其特征在于,根据获得的所述定时热点数据,形成具有预定格式的热点数据,包括:
获取所述定时热点数据对应的标识信息;
根据所述定时热点数据对应的统一资源定位符,为所述定时热点数据匹配对应的数据类型;
在匹配的数据类型下,根据所述定时热点数据对应的标识信息,确定所述定时热点数据的定时时间;
根据所述标识信息、所述数据类型、所述定时时间及热点类型,形成具有第二数据格式的定时热点数据。
6.根据权利要求5所述的热点数据的处理方法,其特征在于,所述数据推送模块将所述缓存队列中的数据推送至当前业务***,包括:
基于所述缓存队列中的定时热点数据的定时时间,将所述定时热点数据在目标时间推送至所述当前业务***,其中,所述目标时间早于所述定时时间;
将所述实时热点数据实时推送至所述当前业务***。
7.根据权利要求1至6任一项所述的热点数据的处理方法,其特征在于,所述方法还包括:
当所述缓存队列的长度大于长度阈值时,按照预设算法对所述缓存队列中的热点数据进行替换,以得到更新的缓存队列。
8.一种热点数据的处理装置,其特征在于,所述装置包括:
数据发现模块,用于周期性地统计热点数据,并将获得的所述热点数据发送至缓存队列;
数据推送模块,用于将所述缓存队列推送至当前业务***,以使所述当前业务***根据所述缓存队列中的热点数据更新对应的热点缓存;
订阅分发模块,用于基于其它业务***对所述缓存队列的订阅,向所述其它业务***提供所述缓存队列中的热点数据。
9.一种业务处理***,其特征在于,包括:
数据发现***,用于执行如权利要求1至7任一项所述的热点数据处理方法;
数据缓存模块,用于在当前业务***接收所述数据发现***提供的缓存队列中的数据后,根据所述缓存队列中的数据更新对应的热点缓存;
数据订阅模块,用于为其它业务***订阅所述缓存队列,以使所述其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
10.根据权利要求9所述的***,其特征在于,所述***还包括:
第一业务处理模块,用于使当前业务***根据更新后的热点缓存处理对应的当前业务请求;
第二业务处理模块,用于使其它业务***基于订阅的所述缓存队列中的数据进行业务处理。
11.一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1至7中任一项所述的热点数据的处理方法。
12.一种计算机设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至7中任一项所述的热点数据的处理方法。
CN201911173799.3A 2019-11-26 2019-11-26 热点数据的处理方法及装置、业务处理***、存储介质 Pending CN112860739A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911173799.3A CN112860739A (zh) 2019-11-26 2019-11-26 热点数据的处理方法及装置、业务处理***、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911173799.3A CN112860739A (zh) 2019-11-26 2019-11-26 热点数据的处理方法及装置、业务处理***、存储介质

Publications (1)

Publication Number Publication Date
CN112860739A true CN112860739A (zh) 2021-05-28

Family

ID=75984759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911173799.3A Pending CN112860739A (zh) 2019-11-26 2019-11-26 热点数据的处理方法及装置、业务处理***、存储介质

Country Status (1)

Country Link
CN (1) CN112860739A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116095170A (zh) * 2023-02-08 2023-05-09 重庆云内核智能科技有限公司 一种基于热点发现解决物联网设备上报数据倾斜的方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116095170A (zh) * 2023-02-08 2023-05-09 重庆云内核智能科技有限公司 一种基于热点发现解决物联网设备上报数据倾斜的方法

Similar Documents

Publication Publication Date Title
CN107172151B (zh) 用于推送信息的方法和装置
US20200250732A1 (en) Method and apparatus for use in determining tags of interest to user
CN108984553B (zh) 缓存方法和装置
CN110175306B (zh) 一种广告信息的处理方法及装置
JP5986082B2 (ja) 全アカウントの検索キーワードの推定値の返信
CN108540508B (zh) 用于推送信息的方法、装置和设备
CN111966887B (zh) 动态缓存方法及装置、电子设备、存储介质
US11477158B2 (en) Method and apparatus for advertisement anti-blocking
WO2015005950A1 (en) Determining whether to send a call-out to a bidder in an online content auction
CN104424325A (zh) 数据查询方法和装置
CN113900907B (zh) 一种映射构建方法和***
CN106547751B (zh) 缓存数据的更新方法及装置
AU2020203282B2 (en) Method and system for matching multi-dimensional data units in electronic information system
CN112860739A (zh) 热点数据的处理方法及装置、业务处理***、存储介质
CN113032702A (zh) 一种页面加载方法和装置
CN113254819B (zh) 一种页面渲染方法、***、设备和存储介质
CN114925304A (zh) 一种信息访问方法、装置和***
CN113138943B (zh) 一种处理请求的方法和装置
CN112819490A (zh) 一种预告秒杀广告的装置和方法
CN113139113A (zh) 搜索请求的处理方法和装置
CN108804195B (zh) 一种页面显示方法、装置、服务器及客户端
CN110309121B (zh) 日志处理方法及装置、计算机可读介质和电子设备
CN110019671B (zh) 一种处理实时消息的方法和***
CN113114611A (zh) 黑名单管理的方法和装置
US8250177B2 (en) Uncached data control in server-cached page

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