CN113761321A - 数据访问控制、数据缓存控制方法及其装置、设备与介质 - Google Patents
数据访问控制、数据缓存控制方法及其装置、设备与介质 Download PDFInfo
- Publication number
- CN113761321A CN113761321A CN202110904093.0A CN202110904093A CN113761321A CN 113761321 A CN113761321 A CN 113761321A CN 202110904093 A CN202110904093 A CN 202110904093A CN 113761321 A CN113761321 A CN 113761321A
- Authority
- CN
- China
- Prior art keywords
- query
- data
- dotting
- target data
- notifications
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 230000004044 response Effects 0.000 claims abstract description 63
- 238000012544 monitoring process Methods 0.000 claims abstract description 27
- 238000001514 detection method Methods 0.000 claims description 50
- 238000012217 deletion Methods 0.000 claims description 26
- 230000037430 deletion Effects 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000010485 coping Effects 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开一种数据访问控制、数据缓存控制方法及其装置、设备与介质,所述控制方法包括:拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;当本地缓存区不存在所述查询结果数据时,对业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;响应应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;监听热点网关接口根据目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将目标数据的查询结果数据缓存到本地缓存区中。本申请的应用可动态预判任意数据是否进入热点时段,据此缓存热点数据,以应对热点时段中激增的数据请求量。
Description
技术领域
本申请涉及网络数据通信技术领域,尤其涉及数据访问控制、数据缓存控制方法,此外还涉及该些方法相应的装置、设备以及非易失性存储介质。
背景技术
当互联网平台出现热点事件时,例如电商促销活动或热点新闻出现时,在该时段内将有巨量的用户发起访问请求,平台服务***在该时段内将应对激增的数据请求量,若未事先制定相应的应对机制,极易造成***宕机的情况出现,使***无法为用户提供相应的服务,造成平台相关的经济损失。
平台为了应对激增的数据请求量,一般会预先缓存热点数据,以快速响应用户的数据请求,但在数据请求量不是很大的情况下,热点数据还是占据一定的内存空间,降低了平台反馈请求的速率,影响用户的使用体验。
而在数据请求量较大的情况下,平台中具有较高响应速度的节点,却可能并不需要进行热点数据的缓存,由此,预缓存的数据将浪费该些节点的内存空间,影响节点的运算性能。
另外,平台在制定预存热点数据方案时,若因考虑不全面,而忽略了某些节点的热点数据缓存时,该些节点因激增的数据请求量而出现宕机时,将造成其所处的整条节点链路的崩溃,使预存热点数据的方案失效。
鉴于现有技术无法有效应对激增的数据请求量,本申请人出于满足该需求而做出相应的探索。
发明内容
本申请的首要目的在于提供一种数据访问控制方法及其相应的装置、电子设备、非易失性存储介质。
本申请的另一目的在于适应前一目的而提供一种数据缓存控制方法及其相应的装置、电子设备、非易失性存储介质。
为满足本申请的各个目的,本申请采用如下技术方案:
适应本申请的首要目的而提出的一种数据访问控制方法,包括如下步骤:
拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;
当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;
响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;
监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中。
进一步的实施例中,所述热点网关接口执行如下步骤:
接收由一个或多个代理服务器推送的所述查询打点通知,确定该些查询打点通知相对应的目标数据;
将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
监听所述热点探测接口对各目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
将所述缓存指令推送至其相对应的代理服务器中。
较佳的实施例中,所述热点探测接口执行如下步骤:
接收由所述热点网关接口推送的一个或多个所述查询打点通知,根据该些查询打点通知各自相对应的目标数据及业务应用,确定各通知所关联的时间线,所述时间线包含多个时间网格,且依照时序排列各所述时间网格;
根据该些查询打点通知各自的访问时间,将各通知投放至其所关联的时间线中相应的时间网格,所述时间网格以链表形式储存各查询打点通知;
通过滑动窗口的统计方式,统计各所述时间线某一时段内各时间网格中所有查询打点通知的数据权重值的权重总和;
判断各所述权重总和是否超过其所对应的预设阈值,将超过阈值的权重总和所对应的目标数据确定为需要进行缓存的数据。
进一步的实施例中,响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口的步骤,包括:
响应所述应答事件,确定该应答事件所指向的业务应用及目标数据;
生成关联于该目标数据的及其所属的业务应用的查询打点通知;
将所述查询打点通知存储至通知队列中,所述通知队列中储存不同目标数据的查询打点通知;
根据所述通知队列中各查询打点通知的排序,按序将该些查询打点通知提交给所述热点网关接口。
进一步的实施例中,监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中的步骤中,若在超过预设响应时间后仍未接收到所述目标数据相对应的所述缓存指令,将在预设节流时段内停止生成该目标数据的所述查询打点通知。
进一步的实施例中,所述数据访问控制方法包括如下步骤:
定时生成本地缓存区中任一缓存数据的数据删除通知,提交给所述热点网关接口;
监听热点网关接口根据所述目标数据的数据删除通知统计后决策的删除指令,响应该指令而将所述缓存数据从所述本地缓存区中移除。
适应本申请的目的而提出的一种数据访问控制装置,其包括:
查询请求拦截模块,用于拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;
数据代理查询模块,用于当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;
查询打点通知提交模块,用于响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;
目标数据缓存模块,用于监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中。
进一步的实施例中,所述查询打点通知提交模块包括:
事件响应子模块,用于响应所述应答事件,确定该应答事件所指向的业务应用及目标数据;
通知生成子模块,用于生成关联于该目标数据的及其所属的业务应用的查询打点通知;
通知储存子模块,用于将所述查询打点通知存储至通知队列中,所述通知队列中储存不同目标数据的查询打点通知;
通知提交子模块,用于根据所述通知队列中各查询打点通知的排序,按序将该些查询打点通知提交给所述热点网关接口。
适应本申请的另一目的而提出的一种数据缓存控制方法,其包括如下步骤:
接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送;
将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据。
适应本申请的目的而提出的一种数据缓存控制装置,其包括:
通知接收模块,用于接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送;
通知传输模块,用于将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
判断监听模块,用于监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
指令推送模块,用于将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据。
适应本申请的目的而提出的一种电子设备,包括中央处理器和存储器,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行所述的数据访问控制方法或数据缓存控制方法的步骤。
适应本申请的目的而提出的一种非易失性存储介质,其存储有依据所述的数据访问控制方法或数据缓存控制方法所实现的计算机程序,所述计算机程序被计算机调用运行时,执行所述的数据访问控制方法或数据缓存控制方法所包括的步骤。
相对于现有技术,本申请的优势如下:
本申请能够根据业务应用中数据被请求后由节点形成的查询打点通知,对被访问的数据是否属于热点数据动态进行预判,按需将相应的热点数据缓存至缓存区中,以便服务于激增的数据请求量,使存储该热点数据的存储节点不必进行数据库查询获取操作,提升节点反馈热点数据的速度,减轻***中各数据存储节点的数据反馈压力,防止因激增的数据请求量导致节点发生宕机,造成业务***的整体崩溃。更具体的说明表现在如下各方面:
首先,本申请采集形成查询打点通知以及进行数据缓存和响应的逻辑均能在节点处实现,便于将相应的业务逻辑标准化地部署到各个节点中,通过该业务逻辑在节点生成热点数据预判所需的查询打点通知,同时构建本地缓存区进行数据缓存,在各个接口的配合下,能提升热点时段内数据请求的响应效率,节点直接从本地缓存区中获取数据进行反馈传输,高效地响应请求方的数据请求,节省数据获取的时间,有效地提升业务***整体的执行效率,提升业务用户的使用体验。
其次,本申请通过热点网关接口进行集中式的热点数据检测,所述热点网关接口通过接收各节点代理执行数据查询后生成的查询打点通知,通过统计各通知所指向的数据在某一时间的请求量,判断各数据是否为需要进行缓存的热点数据,控制节点将热点数据缓存至其本地中,实现集中式的流量监控的功能,从而促成提升节点的热点数据反馈速度,减轻节点运算压力;对于非热点数据而言,则不必指示节点进行缓存,因此,以集中式的监测手段实现了节点的存储空间的高效利用。
再者,本申请的热点网关接口一般部署于节点外,各节点通过数据通信链路与所述热点网关接口建立连接,通过分布式的部署方式,提升热点预测业务的整体灵活性,使其具备同时服务各节点的热点预测请求的能力,开发人员也可在***中部署多个所述热点网关接口,以提升热点预测业务整体的预测效率。
另外,本申请使开发人员在业务应用研发时,对不可预测的热点数据可以延迟到业务应用运行时进行预测,不需要在研发时考虑各数据的缓存声明,可以让开发者更加专注于业务逻辑本身。
本申请附加的方面和优点将在下面的描述中部分给出这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的数据访问控制方法的典型实施例的流程示意图;
图3为实施本申请相关技术方案时,本申请的业务应用、代理服务器、业务应用数据库及热点网关接口之间的关系图;
图4为图2中步骤S13的一种实施例的具体步骤所形成的流程示意图;
图5为图2中步骤S13的另一种实施例的具体步骤所形成的流程示意图;
图6为图2中步骤S13的再一种实施例的具体步骤所形成的流程示意图;
图7为数据访问控制方法的一种实施例的流程示意图,其相对添加了后置步骤;
图8为本申请的数据访问控制装置的典型实施例的原理框图;
图9为本申请的数据缓存控制方法的典型实施例的流程示意图;
图10为本申请的数据缓存控制装置的典型实施例的原理框图;
图11为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信***),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位***)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“服务节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个业务服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
所述的业务应用,是指服务于服务器或终端设备上的应用程序的业务,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
对于服务器而言,所述的业务应用通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
请参阅图2,本申请的一种数据访问控制方法,在其典型实施例中,其包括如下步骤:
步骤S11,拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求:
代理服务器拦***问所述业务应用数据库的所述目标数据查询请求,确定该查询请求所指向的目标数据,以在所述本地缓存区中查询该目标数据,若该本地缓存区中存在该目标数据,则将该目标数据作为所述查询结果数据返回至所述查询请求的接收方,以应答所述查询请求。
请参考图3,图3所示为本申请各端之间的关系图,业务应用一般是指运行于终端设备中的应用程序,代理服务器、本地缓存区及某一业务应用相对应的业务应用数据库一般构成一个节点,而热点网关接口一般部署于相应的热点预测业务服务器中,代理服务器通过拦截业务应用访问其业务应用数据库的所述目标数据查询请求,优先从所述本地缓存区中查询该请求所执行的目标数据应答请求,若本地缓存区中不存在所述目标数据,则代理服务器先从所述业务应用数据库查询获取该目标数据反馈值至所述业务应用中,便于该业务应用获取该目标数据进行相应的业务操作;代理服务器将所述目标数据反馈后,将生成关联于该目标数据及其业务应用的所述查询打点通知,并将该通知提交至所述热点网关接口中,以监听该热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据缓存到本地缓存区中。所述热点网关接口也可被部署于所述节点中,便于将相应的热点预测业务逻辑标准化地部署到该节点中,以提升热点时段内数据请求的响应效率。
所述的业务应用数据库应用存储对应的业务应用的数据,不同的业务应用拥有各种相对应的所述业务应用数据库,该些业务应用数据库中存储各业务所需的数据,例如,当业务应用为电商应用程序时,其所述业务数据库中一般存储各商品的特征信息,例如,商品的摘要图、商品的名称、商品的价格或商品的详细信息等,以便通过查询该业务应用的所述业务应用数据库,向卖家或买家等该业务应用的用户反馈相应的数据,以便用户获取该数据进行相应的业务操作。
关于所述业务应用数据库的部署位置,一般部署于相应的业务服务器、运行业务应用的设备或代理服务器等存储端中,当所述业务应用数据库不部署至代理服务器中时,所述代理服务器通过与该些存储端建立数据通信链路,以监控该些存储端的所述业务应用数据库查询操作,当监控到其相应的业务应用数据库进行查询操作时,将拦截该查询操作所指向的目标数据的所述查询请求,以从判断所述本地缓存区中是否存在该目标数据,若存在则将该本地缓存区中直接获取该目标数据进行反馈,以节省存储端进行所述查询操作的时间,从所述本地缓存区中直接获取数据进行反馈执行高效地数据反馈操作,可大大提升数据传输的效率,降低存储端的运算压力,使存储端的应用业务在服务多个数据请求方时,不因过大的请求量而造成***崩溃,提升应用业务的整体稳定性。
所述本地缓存区中存储的数据为被代理服务器确定为热点数据的数据,该些热点数据由代理服务器通过热点网关接口的热点判断所确定,代理服务器通过所述热点网关接口确定需要进行缓存的热点数据,将该些热点数据缓存至所述本地缓存区中,以便在该些热点数据的热点请求时段时,代理服务器快速地从所述本地缓存区中获取该些数据进行反馈,减少从所述业务应用数据库中查询获取该些数据的查询获取操作,降低***的性能消耗,减轻服务器的运算压力,提升整体反馈效率。
若代理服务器在所述本地缓存区查询不到所述查询请求所指向的目标数据进行反馈时,将从所述业务应用数据库中查询获取该目标数据,以反馈所述查询请求,关于其具体的实施方式,请参考后续步骤,本步骤恕不赘述。
步骤S12,当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求:
当代理服务器根据在所述本地缓存区中查询不到所述查询请求所指向的目标数据时,将执行所述代理查询,从所述业务应用数据库查询该目标数据,获取该目标数据推送至所述查询请求的接收方中,以应答该接收方的查询请求。
代理服务器若在所述本地缓存区中查询不到所述目标数据时,将为生成指向该目标数据的查询打点通知,以判断该目标数据是否为需要缓存至所述本地缓存区中的数据,通过将所述查询打点通知提交至热点网关接口中,交由该热点网关接口判断其是否为热点数据,若该目标数据为热点数据,则表征该目标数据在当前时段或某一时段内将有大量的反馈需求,则将其缓存至所述本地缓存区中,使代理服务器可从本地缓存区中直接获取数据进行反馈,以提升该目标数据的反馈速率,防止大量的数据库查询操作导致服务器出现宕机,导致业务应用崩溃,影响用户的使用体验。
步骤S13,响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口:
代理服务器从所述业务应用数据库中获取所述目标数据反馈所述查询请求,完成该查询请求的所述应答事件后,将生成指向所述业务应用及目标数据的所述查询打点通知,并将该查询打点通知提交至所述热点网关接口中,以控制该热点网关接口判断该通知所指向的目标数据是否为需要进行缓存,若被判断为需要进行缓存的数据时,则将该目标数据缓存至所述本地缓存区中,以提升该目标数据的请求反馈速率,节省代理服务器进行代理查询操作所消耗的性能。
所述的查询打点通知指向所述查询请求所关联的业务应用及目标数据,且该通知包括查询请求的访问时间及数据权重值,以便代理服务器将所述查询打点通知提交至所述热点网关接口时,该热点网关接口确定该查询打点通知的业务应用及目标数据,确定该查询打点通知相关联的时间线,并根据其访问时间,将该查询打点通知的所述目标数据的数据权重值投放该时间线相应的时间网关中,以通过滑动窗口的统计方式统计各时间网关中的所述数据权重值的权重总和,判断该权重总和是否为超过预设阈值,确定该目标数据是否需要进行缓存。
所述的热点网关接口用于检测数据是否为热点数据,以进行该热点数据的缓存操作,该热点网关接口通过统计数据在当前时间段或某一时间段中的查询请求量,判断其请求量是否超过预设阈值,以确定该数据是否需要进行缓存。
所述的热点网关接口一般部署于相应的业务服务器中,以便所述热点网关接口可同时服务多个代理服务器的数据缓存判断,所述热点网关接口可通过接收多个代理服务器所推送的所述查询打点通知,为多个通知所指向的目标数据进行缓存判断,分布式的部署,使热点网关接口服务于多个业务应用,提升***的整体灵活性,同时也说明,***内可设置多个所述热点网关接口,多个热点网关接口可服务多个代理服务器的数据缓存判断请求,以提升***的整体热点判断效率,提升***的整体稳定性。
具体的,所述热点网关接口中调用热点探测接口,该热点探测接口通过将所述查询打点通知投放至相对应的时间线中,通过滑动窗口的统计方式统计时间线某一时段中该通知所指向的目标数据的请求量(权重),判断其在该时段内各时间中请求量(权重)是否超过预设阈值,以判断该目标数据是否为热点数据,所述热点网关接口通过实时监控该热点探测接口的判断结果,将被判断为热点数据的目标数据确定为需要进行缓存的数据,并向代理服务器推送指向该目标数据的缓存指令,触发代理服务器将该目标数据缓存至其本地缓存区中,以便代理服务器在热点时段内,即该目标数据的请求量较大的时间段内快速地反馈该目标数据至相应的数据请求端中,使代理服务器不需要从业务应用数据库中查询获取该目标数据进行反馈,节省代理服务器的性能效率,防止代理服务器或业务应用数据库的存储端因无法快速地处理指向该目标数据的大量数据请求而出现宕机,使业务***出现崩溃,影响用户的使用体验。
请参考图4,代理服务器通过将各目标数据所属的查询打点通知存储至通知队列中,以有序地将该些通知推送至所述热点网关接口中进行数据缓存判断,维护代理服务器的***秩序,关于该存储操作的具体实施方式,其实施步骤如下:
步骤S131,响应所述应答事件,确定该应答事件所指向的业务应用及目标数据:
代理服务器从所述业务应用数据库中查询获取所述查询请求所指向的目标数据进行查询数据的应答事件后,确定该事件所指向的业务应用及目标数据,以生成指向该业务应用及目标数据的所述查询打点通知。
步骤S132,生成关联于该目标数据的及其所属的业务应用的查询打点通知:
代理服务器生成关联于所述目标数据及其所属的业务应用的所述查询打点通知,且该查询打点通知中包括所述目标数据所属的查询请求的访问时间及该数据权重值。
步骤S133,将所述查询打点通知存储至通知队列中,所述通知队列中储存不同目标数据的查询打点通知:
代理服务器将所述查询打点通知存储至所述通知队列中,该通知队列中存储着未提交至所述网关热点接口的所述查询打点通知,各查询打点通知可关联于不同的目标数据,以便代理服务器通过该通知队列,有序地将代理中存储的各所述查询打点通知提交至所述网关热点接口中。
步骤S134,根据所述通知队列中各查询打点通知的排序,按序将该些查询打点通知提交给所述热点网关接口:
代理服务器根据所述通知队列中各查询打点通知的排序,一般遵循先进后出的原则,按序地将该通知队列中存储的各查询打点通知提交至所述热点网关接口中,以间接控制热点网关接口有序地判断各通知所关联的目标数据是否需要进行缓存操作。
请参考图5,关于所述热点网关接口进行所述查询打点通知所指向的目标数据的缓存判断的具体实施方式,其具体实施步骤如下:
步骤S131’,接收由一个或多个代理服务器推送的所述查询打点通知,确定该些查询打点通知相对应的目标数据:
所述热点网关接口接收由一个或多个代理服务器推送的所述查询打点通知,并确定该些查询打点通知相应的的所述目标数据。
该些查询打点通知的推送方一般为不同的代理服务器所推送,该些代理服务器通过于所述热点网关接口建立相应的数据通信链路,推送其各种的所属查询打点通知,以送达至该热点网关接口中。
相应的,各所属查询打点通知所相关联的目标数据可为同一目标数据或不同的目标数据,且其业务应用也与其目标数据相关联,例如,一个代理服务器所推送的多个所述查询打点通知可为同一业务应用的同一目标数据或不同目标数据,或该些所述查询打点通知可为不同业务应用各种相关联的目标数据,所述热点网关接口可处理不同业务应用的目标数据,其具有较高地拓展性,服务于不同代理服务器的同时,也可为代理服务器处理不同业务应用的目标数据。
步骤S132’,将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存:
所述网关热点接口接收各所述查询打点通知后,将该些查询打点通知传输至所述热点探测接口中,触发该热点探测接口判断该些查询打点通知所指向的目标数据的是否需要进行缓存。
所述热点探测接口接收到该些查询打点通知后,确定各查询打点通知相关联的时间线,并根据所述查询打点通知的访问时间,将该些通知相关联的数据权重值投放至其相关联的时间线中相对应的时间网格中,以通过滑动窗口的统计方式,统计该滑动窗口内的各时间网格中所投放的数据权重值的权重总和,判断各权重总和是否超过其预设阈值,以确定各目标数据是否需要进行缓存。
步骤S133’,监听所述热点探测接口对各目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令:
所述网关热点接口实时监控所述热点探测监控中各目标数据的所述判断结果,当监控到某一目标数据的判断结果的权重总和超过其预设阈值时,将生成该目标数据需要进行缓存的所述缓存指令。
步骤S134’,将所述缓存指令推送至其相对应的代理服务器中:
所述网关热点接口将其生成的各所述缓存指令推送至各指令所指向的目标数据相关联的代理服务器中,以控制代理服务器将该目标数据缓存至其本地缓存区中,便于该代理服务器从本地缓存区中获取该目标数据进行快速地数据反馈。
请参考图6,关于所述热点探测接口执行所述查询打点通知的热点数据判断的具体实施方式,其具体实施步骤如下:
步骤S131”,接收由所述热点网关接口推送的一个或多个所述查询打点通知,根据该些查询打点通知各自相对应的目标数据及业务应用,确定各通知所关联的时间线,所述时间线包含多个时间网格,且依照时序排列各所述时间网格:
所述热点探测接口接收由实施热点网关接口推送的一个或多个实施查询打点通知,并确定该些查询打点通知各种相对应的目标数据及业务应用,以根据该些查询打点通知各种相对应的目标数据及业务应用,确定各通知相关联的实施时间线。
所述的时间线具有多个所述时间网格,其依据时间顺序,把其所具有的各所述时间网格串联起来,形成相对完整的记录体系,以所述时间网格为投放单位,各所述时间网格在其所位于的所述时间线中一般以秒为单位进行分隔,投放各所述查询打点通知的数据权重值,便于通过滑动窗口的统计方式,统计各目标数据在某一时间的权重,判断目标数据在该时间中是否为热点数据,以热点网格接口为中继,间接触发代理服务器将该目标数据缓存至本地缓存中,应付该目标数据在热点时间内巨量的数据请求量。
步骤S132”,根据该些查询打点通知各自的访问时间,将各通知投放至其所关联的时间线中相应的时间网格,所述时间网格以链表形式储存各查询打点通知:
所述热点探测接口根据各所述查询打点通知各自的访问时间,将该些查询打点通知投放至其所相关联的时间线中相应的所述时间网格中,对该些查询打点通知进行分类汇总,所述时间网格以链表形式储存各查询打点通知。
所述的时间网格的数据存储方式一般为链表形式,以存储各所述查询打点通知,所述时间网格按照所述热点探测接口的投放所述查询打点通知的时间,按序地存储各查询打点通知,即最后接送的查询打点通知,在其链表存储结构中一般为存储至列表最尾部的位置中,以便所述热点探测接口有序地统计该时间网格中各查询打点通知的数据权重值的权重总和。
步骤S133”,通过滑动窗口的统计方式,统计各所述时间线某一时段内各时间网格中所有查询打点通知的数据权重值的权重总和:
所述热点探测接口通过滑动窗口的统计方式,统计各所述时间线中该滑动窗口内各时间网格中所有查询打点通知的数据权重值的权重总和。
所述的滑动窗口的窗口大小以秒为单位进行设置,一般设置在30秒至60秒的时间范围内,以保证统计结果的时效性,且滑动窗口在时间线中的滑动步数一般设置以1秒为单位进行滑动,以保证统计结果的精准度,确保各时间网格的统计所得权重总和为以秒为单位进行实时更新,以免因滑动步数较大,造成统计的结果出现误差,导致应该缓存的目标时数据没有进行缓存,造成代理服务器无法应付该目标数据的巨大请求量而造成宕机,使***发生崩溃。
所述热点探测接口以多线程的运算方式,通过各时间线的所述滑动窗口,统计各时间线的滑动窗口内各时间网格的目标数据的数据权重值的权重总和,判断各权重总和是否超过其相对应的预设阈值,确定各目标数据是否需要进行缓存。
步骤S134”,判断各所述权重总和是否超过其所对应的预设阈值,将超过阈值的权重总和所对应的目标数据确定为需要进行缓存的数据:
所述热点探测接口实时统计各时间网格投放的目标数据的权重总和是否超过各目标数据各种相对应的所述预设阈值,将超过阈值的权重总和所对应的目标数据确定为需要进行缓存的数据,以触发代理服务器将该目标数据缓存至本地缓存区中。
所述预设阈值一般由开发人员所预先设置,开发人员根据代理服务器的运算性能即存储空间大小等设备性能,设置其所负责的目标数据的所述预设阈值,相对应,该些预设阈值也可自动进行更新,所述热点探测接口根据各时间网格的权重总和的统计结果,更新各时间网格相对应的预设阈值的大小,以确保判断时间是否需要进行缓存的精确性,确保***整体的鲁棒性。
步骤S14,监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中:
代理服务器通过与所述热点网关接口的数据通信链路,实时监听该热点网关根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该缓存指令,该该指令所指向的目标数据缓存至所述本地缓存区中。
代理服务器实时监听所述热点网关接口中由其所推送的各个查询打点通知的缓存判断结果,以接收由该热点网关接口推送的一个或多个缓存指令,确定该些缓存指令所指向的目标数据,以将该些目标数据缓存至所述本地缓存区中,以便后续接收指向该些目标数据的查询请求,从该本地缓存区中直接获取该些目标数据进行反馈,快速地应答数据的查询请求,节省因执行业务应用数据库中的数据查询获取所消耗的性能,减轻代理服务器的运行压力,使代理服务器具有应付激增的数据请求量的能力,防止因激增的我数据请求量而导致***宕机。
一直实施例中,代理服务器监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令时,若在超过预设响应时间后仍未接收到所述目标数据相对应的所述缓存指令,将在预设节流时段内内将该目标数据确定为非热点数据,停止生成该目标数据的所述查询打点通知,以节省***的运算性能。所述的预设响应时间一般设置在30至60秒的范围内,所述运算结论时间段一般设置在15至30秒的范围内,以防止因过长的时间导致热点数据没有进行缓存。
以上的典型实施例及其变化实施例充分揭示了本申请的数据访问控制方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参考图7,本方法还包括如下后置步骤:
步骤S15,定时生成本地缓存区中任一缓存数据的数据删除通知,提交给所述热点网关接口:
代理服务器定时生成本地缓存区中缓存的一个或多个缓存数据的所述数据删除通知,并将该所述数据删除通知推送至所述热点网关接口中,以便触发所述热点网关接口判断所述数据删除通知所指向的缓存数据在当前时间是否为不需要进行缓存的数据。
代理服务器定时遍历所述本地缓存区,检测该本地缓存区中缓存的缓存数据的存在时间是否超过预设的缓存时长,为超过所述预设时长的缓存数据生成相关联的所述数据删除通知,以根据所述热点网关接口的删除指令将其从本地缓存区中删除,将不必要进行缓存的数据从本地缓存区中删除,以节省所述本地缓存区的缓存空间,减轻设备的性能压力;所述缓存时长一般设置在30至60秒的范围内。
所述的数据删除通知指向所述超过所述缓存时间的缓存数据及其对应的业务应用,以便代理服务器将所述数据删除通知提交至所述热点网关接口时,该热点网关接口确定该数据删除通知的业务应用及缓存数据,确定该查询打点通知相关联的时间线,并根据该数据删除通知的生成时间,将该查询打点通知的所述缓存数据的权重投放该时间线相应的时间网关中,以通过滑动窗口的统计方式统计各时间网关中的所述权重,判断其是否未超过预设阈值,将未超过预设阈值的缓存数据确定需要从本地缓存区中删除的数据。
步骤S16,监听热点网关接口根据所述目标数据的数据删除通知统计后决策的删除指令,响应该指令而将所述缓存数据从所述本地缓存区中移除:
代理服务器通过与所述热点网关接口的数据通信链路,实时监听该热点网关根据所述缓存数据的数据删除通知统计后决策的删除指令,响应该删除指令,将该指令所指向的缓存数据从所述本地缓存区中删除。
具体的,所述热点网关接口通过所述热点探测接口通过将所述数据删除通知投放至相对应的时间线中,通过滑动窗口的统计方式统计时间线某一时段中该通知所指向的缓存数据的请求量(权重),判断其在该时段内各时间中请求量(权重)是否未超过预设阈值,将未超过预设阈值的缓存数据判断为需要从所述本地缓存区中删除的数据,所述热点网关接口通过实时监控该热点探测接口的判断结果,将被判断为需要进行删除的缓存数据删除相对应的所述删除指令,并向代理服务器推送指向该删除指令,触发代理服务器将该指令所指向的缓存数据从所述本地缓存区中删除,以节省代理服务器的存储空间。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种数据访问控制装置,按照这一思路,请参阅图8,其中的一个典型实施例中,该装置包括:查询请求拦截模块11、数据代理查询模块12、查询打点通知提交模块13及目标数据缓存模块14。其中,查询请求拦截模块11,用于拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;数据代理查询模块12,用于当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;查询打点通知提交模块13,用于响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;目标数据缓存模块14,用于监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中。
进一步的实施例中,所述查询打点通知提交模块13包括:事件响应子模块,用于响应所述应答事件,确定该应答事件所指向的业务应用及目标数据;通知生成子模块,用于生成关联于该目标数据的及其所属的业务应用的查询打点通知;通知储存子模块,用于将所述查询打点通知存储至通知队列中,所述通知队列中储存不同目标数据的查询打点通知;通知提交子模块,用于根据所述通知队列中各查询打点通知的排序,按序将该些查询打点通知提交给所述热点网关接口。
请参阅图9,本申请的一种数据缓存控制方法,在其典型实施例中,其包括如下步骤:
步骤S21,接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送:
所述热点网关接口接收由一个或多个代理服务器推送的所述查询打点通知,并确定该些查询打点通知相应的的所述目标数据。
该些查询打点通知的推送方一般为不同的代理服务器所推送,该些代理服务器通过于所述热点网关接口建立相应的数据通信链路,推送其各种的所属查询打点通知,以送达至该热点网关接口中。
相应的,各所属查询打点通知所相关联的目标数据可为同一目标数据或不同的目标数据,且其业务应用也与其目标数据相关联,例如,一个代理服务器所推送的多个所述查询打点通知可为同一业务应用的同一目标数据或不同目标数据,或该些所述查询打点通知可为不同业务应用各种相关联的目标数据,所述热点网关接口可处理不同业务应用的目标数据,其具有较高地拓展性,服务于不同代理服务器的同时,也可为代理服务器处理不同业务应用的目标数据。
步骤S22,将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存:
所述网关热点接口接收各所述查询打点通知后,将该些查询打点通知传输至所述热点探测接口中,触发该热点探测接口判断该些查询打点通知所指向的目标数据的是否需要进行缓存。
所述热点探测接口接收到该些查询打点通知后,确定各查询打点通知相关联的时间线,并根据所述查询打点通知的访问时间,将该些通知相关联的数据权重值投放至其相关联的时间线中相对应的时间网格中,以通过滑动窗口的统计方式,统计该滑动窗口内的各时间网格中所投放的数据权重值的权重总和,判断各权重总和是否超过其预设阈值,以确定各目标数据是否需要进行缓存。
关于所述热点探测接口判断各所述通知所指向的目标数据的是否需要进行缓存的具体实施方式,请步骤S13中相关的实施方式,本步骤恕不赘述。
步骤S23,监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令:
所述网关热点接口实时监控所述热点探测监控中各目标数据的所述判断结果,当监控到某一目标数据的判断结果的权重总和超过其预设阈值时,将生成该目标数据需要进行缓存的所述缓存指令。
步骤S24,将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据:
所述网关热点接口将其生成的各所述缓存指令推送至各指令所指向的目标数据相关联的代理服务器中,以控制代理服务器将该目标数据缓存至其本地缓存区中,便于该代理服务器从本地缓存区中获取该目标数据进行快速地数据反馈。
代理服务器实时监听所述热点网关接口中由其所推送的各个查询打点通知的缓存判断结果,以接收由该热点网关接口推送的一个或多个缓存指令,确定该些缓存指令所指向的目标数据,以将该些目标数据缓存至所述本地缓存区中,以便后续接收指向该些目标数据的查询请求,从该本地缓存区中直接获取该些目标数据进行反馈,快速地应答数据的查询请求,节省因执行业务应用数据库中的数据查询获取所消耗的性能,减轻代理服务器的运行压力,使代理服务器具有应付激增的数据请求量的能力,防止因激增的我数据请求量而导致***宕机。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种数据缓存控制装置,按照这一思路,请参阅图10,其中的一个典型实施例中,该装置包括:通知接收模块21、通知传输模块22、判断监听模块23及指令推送模块24。其中,通知接收模块21,用于接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送;通知传输模块22,用于将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;判断监听模块23,用于监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;指令推送模块24,用于将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据。
为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述数据访问控制方法或数据缓存控制方法所实现的计算机程序。具体请参阅图11,图11为本实施例计算机设备基本结构框图。
如图11所示,计算机设备的内部结构示意图。该计算机设备包括通过***总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作***、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种数据访问控制方法或数据缓存控制方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种数据访问控制方法或数据缓存控制方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本发明的数据访问控制装置或数据缓存控制装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有收藏商品状态更新装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的数据访问控制方法或数据缓存控制方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例数据访问控制方法或数据缓存控制方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请能够根据业务应用中数据被请求后由节点形成的查询打点通知,对被访问的数据是否属于热点数据动态进行预判,按需将相应的热点数据缓存至缓存区中,以便服务于激增的数据请求量,使存储该热点数据的存储节点不必进行数据库查询获取操作,提升节点反馈热点数据的速度,减轻***中各数据存储节点的数据反馈压力,防止因激增的数据请求量导致节点发生宕机,造成业务***的整体崩溃。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围
Claims (11)
1.一种数据访问控制方法,其特征在于,包括如下步骤:
拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;
当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;
响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;
监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中。
2.根据权利要求1所述的方法,其特征在于,所述热点网关接口执行如下步骤:
接收由一个或多个代理服务器推送的所述查询打点通知,确定该些查询打点通知相对应的目标数据;
将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
监听所述热点探测接口对各目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
将所述缓存指令推送至其相对应的代理服务器中。
3.根据权利要求2所述的方法,其特征在于,所述热点探测接口执行如下步骤:
接收由所述热点网关接口推送的一个或多个所述查询打点通知,根据该些查询打点通知各自相对应的目标数据及业务应用,确定各通知所关联的时间线,所述时间线包含多个时间网格,且依照时序排列各所述时间网格;
根据该些查询打点通知各自的访问时间,将各通知投放至其所关联的时间线中相应的时间网格,所述时间网格以链表形式储存各查询打点通知;
通过滑动窗口的统计方式,统计各所述时间线某一时段内各时间网格中所有查询打点通知的数据权重值的权重总和;
判断各所述权重总和是否超过其所对应的预设阈值,将超过阈值的权重总和所对应的目标数据确定为需要进行缓存的数据。
4.根据权利要求1所述的方法,其特征在于,响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口的步骤,包括:
响应所述应答事件,确定该应答事件所指向的业务应用及目标数据;
生成关联于该目标数据的及其所属的业务应用的查询打点通知;
将所述查询打点通知存储至通知队列中,所述通知队列中储存不同目标数据的查询打点通知;
根据所述通知队列中各查询打点通知的排序,按序将该些查询打点通知提交给所述热点网关接口。
5.根据权利要求1所述的方法,其特征在于,监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中的步骤中,若在超过预设响应时间后仍未接收到所述目标数据相对应的所述缓存指令,将在预设节流时段内停止生成该目标数据的所述查询打点通知。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,包括如下步骤:
定时生成本地缓存区中任一缓存数据的数据删除通知,提交给所述热点网关接口;
监听热点网关接口根据所述目标数据的数据删除通知统计后决策的删除指令,响应该指令而将所述缓存数据从所述本地缓存区中移除。
7.一种数据缓存控制方法,其特征在于,包括:
接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送;
将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据。
8.一种数据访问控制装置,其特征在于,其包括:
查询请求拦截模块,用于拦***问业务应用数据库的目标数据查询请求,优先从本地缓存区中获取该请求对应的查询结果数据,以应答所述请求;
数据代理查询模块,用于当本地缓存区不存在所述查询结果数据时,对所述业务应用数据库执行代理查询以获得查询结果数据,以应答所述请求;
查询打点通知提交模块,用于响应所述应答事件生成关联于所述目标数据的查询打点通知,提交给热点网关接口;
目标数据缓存模块,用于监听热点网关接口根据所述目标数据的查询打点通知统计后决策的缓存指令,响应该指令而将所述目标数据的查询结果数据缓存到本地缓存区中。
9.一种数据缓存控制装置,其特征在于,其包括:
通知接收模块,用于接收由一个或多个代理服务器推送的查询打点通知,确定该些查询打点通知相对应的目标数据,所述查询打点通知由代理服务器响应应答事件所生成推送;
通知传输模块,用于将该些查询打点通知传输至热点探测接口,以控制该热点探测接口判断该些通知所指向的目标数据的是否需要进行缓存;
判断监听模块,用于监听所述热点探测接口对各通知所指向的目标数据的判断结果,生成需要进行缓存的目标数据的所述缓存指令;
指令推送模块,用于将所述缓存指令推送至其相对应的代理服务器中,以控制所述代理服务器缓存该指令所指向的目标数据。
10.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至7中任一项所述的方法的步骤。
11.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至7中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该些方法所包括的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110904093.0A CN113761321B (zh) | 2021-08-06 | 2021-08-06 | 数据访问控制、数据缓存控制方法及其装置、设备与介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110904093.0A CN113761321B (zh) | 2021-08-06 | 2021-08-06 | 数据访问控制、数据缓存控制方法及其装置、设备与介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113761321A true CN113761321A (zh) | 2021-12-07 |
CN113761321B CN113761321B (zh) | 2024-07-05 |
Family
ID=78788671
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110904093.0A Active CN113761321B (zh) | 2021-08-06 | 2021-08-06 | 数据访问控制、数据缓存控制方法及其装置、设备与介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113761321B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514650A (zh) * | 2022-09-21 | 2022-12-23 | 杭州网易再顾科技有限公司 | 限流场景下的带宽管理方法、装置、介质及电子设备 |
CN115878677A (zh) * | 2023-02-09 | 2023-03-31 | 徐工汉云技术股份有限公司 | 分布式多级缓存的数据处理方法和装置 |
CN116112566A (zh) * | 2023-01-05 | 2023-05-12 | 中国第一汽车股份有限公司 | 车辆流量数据的处理方法及处理装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机***有限公司 | 一种数据访问的处理方法和*** |
CN104394184A (zh) * | 2014-08-19 | 2015-03-04 | 广州华多网络科技有限公司 | 请求处理方法、装置及*** |
CN105989034A (zh) * | 2015-02-03 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 网页展示方法及装置 |
CN110727727A (zh) * | 2019-10-15 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 一种数据库的统计方法及装置 |
CN112076464A (zh) * | 2020-09-04 | 2020-12-15 | 腾讯科技(深圳)有限公司 | 一种数据请求处理方法、装置、计算机设备及存储介质 |
-
2021
- 2021-08-06 CN CN202110904093.0A patent/CN113761321B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机***有限公司 | 一种数据访问的处理方法和*** |
CN104394184A (zh) * | 2014-08-19 | 2015-03-04 | 广州华多网络科技有限公司 | 请求处理方法、装置及*** |
CN105989034A (zh) * | 2015-02-03 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 网页展示方法及装置 |
CN110727727A (zh) * | 2019-10-15 | 2020-01-24 | 深圳前海微众银行股份有限公司 | 一种数据库的统计方法及装置 |
CN112076464A (zh) * | 2020-09-04 | 2020-12-15 | 腾讯科技(深圳)有限公司 | 一种数据请求处理方法、装置、计算机设备及存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115514650A (zh) * | 2022-09-21 | 2022-12-23 | 杭州网易再顾科技有限公司 | 限流场景下的带宽管理方法、装置、介质及电子设备 |
CN116112566A (zh) * | 2023-01-05 | 2023-05-12 | 中国第一汽车股份有限公司 | 车辆流量数据的处理方法及处理装置 |
CN115878677A (zh) * | 2023-02-09 | 2023-03-31 | 徐工汉云技术股份有限公司 | 分布式多级缓存的数据处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113761321B (zh) | 2024-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113761321B (zh) | 数据访问控制、数据缓存控制方法及其装置、设备与介质 | |
US8191068B2 (en) | Resource management system, resource information providing method and program | |
EP2464083B1 (en) | System and method for allocating resources based on events in a network environment | |
US7243136B2 (en) | Approach for managing and providing content to users | |
US7720841B2 (en) | Model-based self-optimizing distributed information management | |
US9444752B2 (en) | Distributed caching systems with configurable extended caching optimization | |
USRE44837E1 (en) | Method and system for background replication of data objects | |
US7631076B2 (en) | Apparatus, system, and method for adaptive polling of monitored systems | |
JP4294494B2 (ja) | 複数のキャッシュサーバによる共有ストレージの使用を管理するデバイスおよび方法 | |
US10649903B2 (en) | Modifying provisioned throughput capacity for data stores according to cache performance | |
CN110247856B (zh) | 服务器资源释放方法和装置 | |
US10516571B2 (en) | Server load management | |
US10592578B1 (en) | Predictive content push-enabled content delivery network | |
CN114268640A (zh) | 云边协同的工业物联网智能路由*** | |
US9800662B2 (en) | Generic network trace with distributed parallel processing and smart caching | |
US20160034504A1 (en) | Efficient aggregation, storage and querying of large volume metrics | |
US11032394B1 (en) | Caching techniques | |
CN108471385B (zh) | 一种针对分布式***的流量控制方法及装置 | |
JP2018005431A (ja) | 運用監視サーバおよび運用監視システム | |
CN112506926A (zh) | 监控数据存储、查询方法及其相应的装置、设备、介质 | |
US20230297436A1 (en) | Key-based aggregation service | |
CN109766363B (zh) | 流式数据处理方法、***、电子设备及存储介质 | |
JP2002259197A (ja) | アクティブコンテンツキャッシュ制御システムと、アクティブコンテンツキャッシュ制御装置及び方法と、アクティブコンテンツキャッシュ制御処理用プログラム及びそのプログラムの記録媒体 | |
CN115333917A (zh) | 一种cdn异常检测方法及装置 | |
US20160034919A1 (en) | Collection and aggregation of large volume of metrics |
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 |