CN107046551B - 一种数据请求、更新方法及相应装置 - Google Patents
一种数据请求、更新方法及相应装置 Download PDFInfo
- Publication number
- CN107046551B CN107046551B CN201610081220.0A CN201610081220A CN107046551B CN 107046551 B CN107046551 B CN 107046551B CN 201610081220 A CN201610081220 A CN 201610081220A CN 107046551 B CN107046551 B CN 107046551B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- buffer area
- server
- determined
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000007246 mechanism Effects 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims description 9
- 238000000151 deposition Methods 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 claims description 2
- 230000003111 delayed effect Effects 0.000 claims 1
- 230000003993 interaction Effects 0.000 abstract description 14
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000005538 encapsulation Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开一种数据请求、更新方法及相应装置。该数据请求方法中,在产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制,若设置有相应的缓存机制,查询缓存区,判断缓存区中是否存在所述数据请求对应的数据,并在存在的情况下,确定所述缓存区中存在的所述数据为所需数据,或者,在存在的情况下,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并根据时间差确定所需数据。通过本申请公开的方案,终端设备在需要获取数据时,优先根据缓存区中与数据请求对应的数据确定所需数据,以减少终端设备与服务器之间的交互次数,相应的,能够减少交互频繁为服务器带来的压力,并减少对网络资源的占用。
Description
技术领域
本公开涉及互联网技术领域,尤其涉及一种数据请求、更新方法及相应装置。
背景技术
随着科技水平的发展,各类型的终端设备日益增多,如智能手机和平板电脑等,用户能够通过终端设备获取各种类型的数据,因此,终端设备在人们的日常生活和工作中起着重要的作用。例如,用户可通过智能手机访问服务器,获取音视频等数据。
现有技术中,终端设备在获取各种类型的数据时,通常采用即时发送数据请求的方法。该方法中,终端设备每次需要获取数据时,会向服务器发送一次数据请求,并等待所述服务器的响应;服务器接收到所述数据请求后,查找相应的数据,再将该数据传输至所述终端设备;所述终端设备接收所述服务器传输的数据,从而实现该数据的获取。
但是,发明人在本申请的研究过程中发现,终端设备采用现有技术获取数据时,需要和服务器之间进行多次交互,从而存在为服务器带来较大压力,并且会占用较多网络资源的缺陷。特别的,随着终端设备的数量日益增多,该缺陷日益明显。
发明内容
为克服相关技术中存在的问题,本公开提供一种数据请求、更新方法及相应装置。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
根据本公开实施例的第一方面,提供一种数据请求方法,包括:
产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制;
若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
优选的,还包括:
若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
优选的,还包括:
在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
根据本公开实施例的第二方面,提供一种数据请求方法,包括:
产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制;
若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔;
若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;
若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
优选的,所述根据所述服务器的反馈确定所需数据,包括:
若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;
若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
优选的,还包括:
在确定所述缓存区中存在所述数据请求对应的数据之后,并在获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
根据本公开实施例的第三方面,提供一种数据更新方法,包括:
接收终端设备传输的数据的版本号,其中,所述数据为所述终端设备的缓存区中存储的数据;
根据所述数据的版本号,判断是否需要进行数据更新;
若确定需要进行数据更新,获取更新后的数据,并将所述更新后的数据传输至终端设备。
根据本公开实施例的第四方面,提供一种数据请求装置,包括:
第一判断模块,用于产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制;
第二判断模块,用于若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
第一确定模块,用于若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
优选的,还包括:
第一通信模块,用于若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
优选的,还包括:
第二通信模块,用于在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
根据本公开实施例的第五方面,提供一种数据请求装置,包括:
第三判断模块,用于产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制;
第四判断模块,用于若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
第五判断模块,用于若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔;
第二确定模块,用于若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;
第三确定模块,用于若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
优选的,所述第三确定模块包括:
第一确定单元,用于若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;
第二确定单元,用于若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
优选的,还包括:
第六判断模块,用于在所述第四判断模块确定所述缓存区中存在所述数据请求对应的数据之后,并在所述第五判断模块获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再触发所述第五判断模块执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
根据本公开实施例的第六方面,提供一种数据更新装置,包括:
接收模块,用于接收终端设备传输的数据的版本号,其中,所述数据为所述终端设备的缓存区中存储的数据;
更新判断模块,用于根据所述数据的版本号,判断是否需要进行数据更新;
传输模块,用于若确定需要进行数据更新,获取更新后的数据,并将所述更新后的数据传输至终端设备。
本公开的实施例提供的技术方案可以包括以下有益效果:
通过本申请公开的数据请求方法,终端设备在需要获取数据时,优先根据缓存区中与所述数据请求对应的数据确定所需数据,以减少终端设备与服务器之间的交互次数,相应的,能够减少交互频繁为服务器带来的压力,并且减少对网络资源的占用。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种数据请求方法的工作流程示意图;
图2是根据一示例性实施例示出的又一种数据请求方法的工作流程示意图;
图3是根据一示例性实施例示出的一种数据更新方法的工作流程示意图;
图4是根据一示例性实施例示出的一种数据请求装置的结构示意图;
图5是根据一示例性实施例示出的又一种数据请求装置的结构示意图;
图6是根据一示例性实施例示出的一种数据更新装置的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
本申请公开一种数据请求、更新方法及相应装置,以解决依靠现有技术获取数据时,所存在的为服务器带来较大压力,并且会占用较多网络资源的问题。
本申请的实施例一公开一种数据请求方法。参见图1所示的工作流程示意图,所述浏览网页中缩略图的方法包括以下步骤:
步骤S11、产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制,若是,执行步骤S12的操作,若否,执行步骤S14的操作。
不同的数据请求,往往需要通过不同接口传输至服务器,而各接口有自身对应的URL(Uniform Resource Locator,统一资源定位符)地址。
采用本申请公开的数据请求方法时,预先根据实际需求或用户设置,确定数据请求是否设置有相应的缓存机制。例如,某些涉及到货币金额的数据请求往往不会设置相应的缓存机制,以防止过期数据给用户带来误解。
另外,当根据实际需求或用户设置,确定需要对某一数据请求设置相应的缓存机制后,在对该数据请求对应的接口进行封装时,会为该接口封装得到的对象中添加缓存标记。这种情况下,根据数据请求对应的接口是否封装有缓存标记,判断所述数据请求是否设置有相应的缓存机制。其中,若本次数据请求所对应的接口封装有缓存标记,则说明本次数据请求设置有相应的缓存机制,相应的,若本次数据请求所对应的接口未封装有缓存标记,则说明本次数据请求未设置缓存机制。
步骤S12、若确定本次的数据请求设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据,若是,执行步骤S13的操作,若否,执行步骤S14的操作。
终端设备在使用过程中,会获取到各种数据。例如,若用户想要查询某一类型的车辆信息,会对终端设备进行请求操作,终端设备在接收到用户的请求操作后,向服务器传输相应的数据请求,服务器会在接收到所述数据请求后,向终端设备反馈相应的车辆信息。这种情况下,终端设备往往会在获取到各种数据后,将其缓存至缓存区。
另外,在将数据缓存至缓存区中时,可将该数据对应的接口的URL地址作为索引,同时存储至所述缓存区中。这种情况下,在查询缓存区中是否存在所述数据请求对应的数据时,往往根据URL作为索引来进行查询。
步骤S13、若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
步骤S14、若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
若经过步骤S11的判断,确定本次的数据请求未设置相应的缓存机制,或者,经过步骤S12的判断,确定所述缓存区中不存在所述数据请求对应的数据,终端设备会将本次产生的数据请求传输至所述服务器。所述服务器接收到所述数据请求后,据此获取所述数据请求对应的数据,并将所述数据请求对应的数据反馈至所述终端设备,以便所述终端设备将所述服务器反馈的数据作为所需数据。
本申请的第一实施例公开一种数据请求方法,该方法中,在产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制,若设置有相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据,并在存在的情况下,确定所述缓存区中存在的所述数据为所需数据。
通过本申请公开的数据请求方法,终端设备在需要获取数据时,优先选取缓存区中与所述数据请求对应的数据作为所需数据,以减少终端设备与服务器之间的交互次数,相应的,能够减少交互频繁为服务器带来的压力,并且减少对网络资源的占用。
进一步的,现有技术中,终端设备通过与服务器之间的交互,才能够获取所需数据,这种情况下,终端设备获取所需数据时,耗费时间较长,而本申请公开的数据请求方法,终端设备能够通过访问缓存区获取所需数据,与现有技术相比,耗时短,速度快。
进一步的,本申请公开的数据请求方法还包括:
在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
通过上述步骤,能够实现对缓存区中的各项数据的更新。具体的,在确定所述缓存区中存在所述数据请求对应的数据后,终端设备将所述缓存区存在的所述数据的版本号传输至服务器;所述服务器接收到所述版本号后,会根据所述版本号判断该数据是否为最新版本的数据,若不是,则确定需要进行数据更新,这种情况下,所述服务器会将最新版本的数据作为更新后的数据,并将所述更新后的数据传输至所述终端设备,以便所述终端设备将所述更新后的数据存入所述缓存区中。
另外,在实现过程中,终端设备还可预设一个更新周期,这种情况下,终端设备会每隔一个更新周期,则向所述服务器反馈依次缓存区中存在的所述数据的版本号,从而保持数据的更新。另外,终端设备也可以在接收到用户实施的更新操作后,再向服务器反馈所述数据的版本号。
另外,终端设备在确定所述缓存区中存在所述数据请求对应的数据后,还可以先判断当前是否可以访问网络,若可以,再执行将所述缓存区中存在的所述数据的版本号传输至服务器的操作。
相应的,本申请的第二实施例公开一种数据请求方法。参见图2所示的工作流程示意图,所述数据请求方法包括以下步骤:
步骤S21、产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制,若是,执行步骤S22的操作,若否,执行步骤S7的操作。
步骤S22、若确定本次的数据请求设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据,若是,执行步骤S23的操作,若否,执行步骤S27的操作。
步骤S21至步骤S22的操作过程与步骤S11至步骤S12的操作过程相同,可相互参照,此处不再赘述。
步骤S23、若所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差。
步骤S24、判断所述时间差是否大于预设的时间间隔,若否,执行步骤S25的操作,若是,执行步骤S26的操作。
步骤S25、若经过判断,确定所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据。
若经过判断,确定所述时间差不大于所述预设的时间间隔,则通常认为本次数据请求的产生时间距离上一次数据请求的产生时间较短,这种情况下,可认为所述缓存区中的数据为较新版本的数据,从而可确定所述缓存区中存在的所述数据为所述所需数据。
步骤S26、若经过判断,确定所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
若确定所述时间差大于所述预设的时间间隔,则通常认为本次数据请求的产生时间距离上一次数据请求的产生时间较长,这种情况下,缓存区中存在的数据往往是较早版本的数据,因此,需要将缓存区中存在的所述数据的版本号传输至服务器。所述服务器接收到所述版本号后,会根据所述版本号判断该数据是否为最新版本的数据,若不是,则确定需要进行数据更新,这种情况下,所述服务器会将最新版本的数据作为更新后的数据,并将所述更新后的数据传输至所述终端设备。
其中,所述根据所述服务器的反馈确定所需数据,包括:若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;或者,若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
另外,终端设备在接收到所述服务器反馈的更新后的数据后,还会将所述更新后的数据存在所述缓存区中。
步骤S27、若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
若经过步骤S21的判断,确定本次的数据请求未设置相应的缓存机制,或者,经过步骤S22的判断,确定所述缓存区中不存在所述数据请求对应的数据,终端设备会将本次产生的数据请求传输至所述服务器。所述服务器接收到所述数据请求后,据此获取所述数据请求对应的数据,并将所述数据请求对应的数据反馈至所述终端设备,以便所述终端设备将所述服务器反馈的数据作为所需数据。
本申请的第二实施例公开一种数据请求方法,该方法中,在产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制,若设置有相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔,其中,若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
通过本申请公开的数据请求方法,终端设备在需要获取数据时,若确定设置有相应的缓存机制,而且在缓存区中存在数据请求对应的数据的情况下,获取本次的数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔,在所述时间差不大于预设的时间间隔的情况下,将缓存区中存在的数据作为所需数据,与现有技术相比,本申请公开的数据请求方法,优先根据缓存区中的数据确定所需数据,能够减少终端设备与服务器之间的交互次数,从而减少交互频繁为服务器带来的压力,并且减少对网络资源的占用。
并且,在本申请公开的数据请求方法中,若确定所述时间差大于所述预设的时间间隔,则将缓存区中存在的数据的版本号传输至服务器,由所述服务器根据所述版本号判断是否需要数据更新,并在需要的情况下,向终端设备反馈更新后的数据,从而能够实现对缓存区中的数据的更新。
进一步的,本申请公开的数据请求方法中,还包括以下步骤:
在确定所述缓存区中存在所述数据请求对应的数据之后,并在获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
在上述步骤中,若确定当前不能访问网络,则直接确定所述缓存区中存在的数据为所需数据,从而减少与服务器之间的交互。
相应的,本申请的第三实施例公开一种数据更新方法。参见图3所示的工作流程示意图,所述数据更新方法包括:
步骤S31、接收终端设备传输的数据的版本号,其中,所述数据为所述终端设备的缓存区中存储的数据。
步骤S32、根据所述数据的版本号,判断是否需要进行数据更新,若是,执行步骤S33的操作。
服务器在接收到所述数据的版本号后,通常会将该版本号与该数据的最新版本号进行对比,若所述数据的版本号与所述最新版本号相同,则表明该数据为最新版本的数据,不需要进行数据更新;若所述数据的版本号与所述最新版本号相同,则表明该数据不是最新版本的数据,需要进行数据更新。
步骤S33、若确定需要进行数据更新,获取更新后的数据,并将所述更新后的数据传输至终端设备。
终端设备在获取更新后的数据后,能够对缓存区中存储的数据进行更新。
本申请的第三实施例公开一种数据更新方法,该方法中,终端设备会向服务器传输缓存区中存储的数据的版本号,服务器接收到所述终端设备传输的版本号后,判断是否需要进行数据更新,并在需要时,将更新后的数据传输至终端设备,以便终端设备更新缓存区中存储的数据。
通过该方法,能够实现对缓存区中的数据的更新。
另外,若在步骤S32中,判定不需要进行数据更新,服务器可以结束本次操作,等待下次接收终端设备传输的数据的版本号,或者,服务器还可以向终端设备反馈相应的通知信息,以通知终端设备无需进行数据更新。
相应的,本申请的第四实施例公开一种数据请求装置。参见图4所示的结构示意图,所述数据请求装置,包括:第一判断模块110、第二判断模块120和第一确定模块130。
其中,所述第一判断模块110,用于产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制。
在对数据请求对应的接口进行封装时,往往需要为该接口封装得到的对象中添加缓存标记。这种情况下,本申请公开的所述第一判断模块110能够根据数据请求对应的接口是否封装有缓存标记,判断所述数据请求是否设置有相应的缓存机制。其中,若本次数据请求所对应的接口封装有缓存标记,则说明本次数据请求设置有相应的缓存机制,相应的,若本次数据请求所对应的接口未封装有缓存标记,则说明本次数据请求未设置缓存机制。
所述第二判断模块120,用于若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据。
终端设备在使用过程中,会获取到各种数据,并且,终端设备往往会在获取到各种数据后,将其缓存至缓存区。另外,在将数据缓存至缓存区中时,可将该数据对应的接口的URL地址作为索引,同时存储至所述缓存区中。这种情况下,在查询缓存区中是否存在所述数据请求对应的数据时,往往根据URL作为索引来进行查询。
所述第一确定模块130,用于若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
通过本申请公开的数据请求装置,终端设备在需要获取数据时,优先根据缓存区中与所述数据请求对应的数据确定所需数据,以减少终端设备与服务器之间的交互次数,相应的,能够减少交互频繁为服务器带来的压力,并且减少对网络资源的占用。
进一步的,本申请公开的数据请求装置还包括:
第一通信模块,用于若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
进一步的,本申请公开的数据请求装置还包括:
第二通信模块,用于在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
通过所述第二通信模块,能够实现对缓存区中的各项数据的更新。具体的,在确定所述缓存区中存在所述数据请求对应的数据后,终端设备通过所述第一通信模块将所述缓存区存在的所述数据的版本号传输至服务器;所述服务器接收到所述版本号后,会根据所述版本号判断该数据是否为最新版本的数据,若不是,则确定需要进行数据更新,这种情况下,所述服务器会将最新版本的数据作为更新后的数据,并将所述更新后的数据传输至所述终端设备,所述第一通信模块会接收所述服务器反馈的更新后的数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
相应的,本申请的第五实施例公开一种数据请求装置,参见图5所示的结构示意图,所述数据请求装置包括:第三判断模块210、第四判断模块220、第五判断模块230、第二确定模块240和第三确定模块250。
其中,所述第三判断模块210,用于产生针对所需数据的数据请求后,判断本次的数据请求是否设置相应的缓存机制;
所述第四判断模块220,用于若设置相应的缓存机制,查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
所述第五判断模块230,用于若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔;
所述第二确定模块240,用于若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;
若经过判断,确定所述时间差不大于所述预设的时间间隔,则通常认为本次数据请求的产生时间距离上一次数据请求的产生时间较短,这种情况下,可认为所述缓存区中的数据为较新版本的数据,从而可确定所述缓存区中存在的所述数据为所述所需数据。
所述第三确定模块250,用于若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
若确定所述时间差大于所述预设的时间间隔,则通常认为本次数据请求的产生时间距离上一次数据请求的产生时间较长,这种情况下,缓存区中存在的数据往往是较早版本的数据,因此,需要将缓存区中存在的所述数据的版本号传输至服务器。所述服务器接收到所述版本号后,会根据所述版本号判断该数据是否为最新版本的数据,若不是,则确定需要进行数据更新,这种情况下,所述服务器会将最新版本的数据作为更新后的数据,并将所述更新后的数据传输至所述终端设备。
其中,所述第三确定模块250在根据所述服务器的反馈确定所需数据时,通常包括以下步骤:若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;或者,若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的数据为所述所需数据。
通过本申请公开的数据请求装置,终端设备在需要获取数据时,若确定设置有相应的缓存机制,而且在缓存区中存在数据请求对应的数据的情况下,获取本次的数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔,在所述时间差不大于预设的时间间隔的情况下,将缓存区中存在的数据作为所需数据,与现有技术相比,能够减少终端设备与服务器之间的交互次数,从而减少交互频繁为服务器带来的压力,并且减少对网络资源的占用。
并且,在本申请公开的数据请求方法中,若确定所述时间差大于所述预设的时间间隔,则将缓存区中存在的数据的版本号传输至服务器,由所述服务器根据所述版本号判断是否需要数据更新,并在需要的情况下,向终端设备反馈更新后的数据,从而能够实现对缓存区中的数据的更新。
进一步的,所述第三确定模块包括:
第一确定单元,用于若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;
第二确定单元,用于若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
进一步的,本申请公开的数据请求装置还包括:
第六判断模块,用于在所述第四判断模块确定所述缓存区中存在所述数据请求对应的数据之后,并在所述第五判断模块获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再触发所述第五判断模块执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
相应的,本申请的第六实施例公开一种数据更新装置,参见图6所示的结构示意图,所述数据更新装置包括:接收模块310、更新判断模块320和传输模块330。
其中,所述接收模块310,用于接收终端设备传输的数据的版本号,其中,所述数据为所述终端设备的缓存区中存储的数据;
所述更新判断模块320,用于根据所述数据的版本号,判断是否需要进行数据更新;
所述传输模块330,用于若确定需要进行数据更新,获取更新后的数据,并将所述更新后的数据传输至终端设备。
服务器在接收到所述数据的版本号后,通常会将该版本号与该数据的最新版本号进行对比,若所述数据的版本号与所述最新版本号相同,则表明该数据为最新版本的数据,不需要进行数据更新;若所述数据的版本号与所述最新版本号相同,则表明该数据不是最新版本的数据,需要进行数据更新。
服务器在获取更新后的数据,会将其传输至终端设备,以便终端设备能够对缓存区中存储的数据进行更新。
本申请的第六实施例公开一种数据更新装置,终端设备会向服务器传输缓存区中存储的数据的版本号,服务器中的数据更新装置接收到所述终端设备传输的版本号后,判断是否需要进行数据更新,并在需要时,将更新后的数据传输至终端设备,从而能够使终端设备更新缓存区中存储的数据。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (12)
1.一种数据请求方法,其特征在于,包括:
产生针对所需数据的数据请求后,判断所述数据请求中是否包括缓存标记,所述缓存标记为根据用户设置在对数据请求进行封装时,对设置有缓存机制的数据请求添加的标记;
若所述数据请求中包括所述缓存标记,则确定所述数据请求设置有相应的缓存机制;
查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
2.根据权利要求1所述的数据请求方法,其特征在于,还包括:
若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
3.根据权利要求1所述的数据请求方法,其特征在于,还包括:
在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
4.一种数据请求方法,其特征在于,包括:
产生针对所需数据的数据请求后,判断所述数据请求中是否包括缓存标记,所述缓存标记为根据用户设置在对数据请求进行封装时,对设置有缓存机制的数据请求添加的标记;
若所述数据请求中包括所述缓存标记,则确定所述数据请求设置有相应的缓存机制;
查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔;
若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;
若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
5.根据权利要求4所述的数据请求方法,其特征在于,所述根据所述服务器的反馈确定所需数据,包括:
若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;
若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
6.根据权利要求4所述的数据请求方法,其特征在于,还包括:
在确定所述缓存区中存在所述数据请求对应的数据之后,并在获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
7.一种数据请求装置,其特征在于,包括:
第一判断模块,用于产生针对所需数据的数据请求后,判断所述数据请求中是否包括缓存标记,所述缓存标记为根据用户设置在对数据请求进行封装时,对设置有缓存机制的数据请求添加的标记;
所述第一判断模块,还用于若所述数据请求中包括所述缓存标记,则确定所述数据请求设置有相应的缓存机制;
第二判断模块,用于查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
第一确定模块,用于若所述缓存区中存在所述数据请求对应的数据,确定所述缓存区中存在的所述数据为所需数据。
8.根据权利要求7所述的数据请求装置,其特征在于,还包括:
第一通信模块,用于若本次的数据请求未设置相应的缓存机制,或者,所述缓存区中不存在所述数据请求对应的数据,将所述数据请求传输至服务器,并接收所述服务器反馈的所述数据请求对应的数据,将所述服务器反馈的所述数据作为所需数据。
9.根据权利要求7所述的数据请求装置,其特征在于,还包括:
第二通信模块,用于在确定所述缓存区中存在所述数据请求对应的数据后,将所述缓存区中存在的所述数据的版本号传输至服务器,以便所述服务器根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
10.一种数据请求装置,其特征在于,包括:
第三判断模块,用于产生针对所需数据的数据请求后,判断所述数据请求中是否包括缓存标记,所述缓存标记为根据用户设置在对数据请求进行封装时,对设置有缓存机制的数据请求添加的标记;
所述第三判断模块,还用于若所述数据请求中包括所述缓存标记,则确定所述数据请求设置有相应的缓存机制;
第四判断模块,用于查询缓存区,判断所述缓存区中是否存在所述数据请求对应的数据;
第五判断模块,用于若确定所述缓存区中存在所述数据请求对应的数据,获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差,并判断所述时间差是否大于预设的时间间隔;
第二确定模块,用于若所述时间差不大于所述预设的时间间隔,确定所述缓存区中存在的所述数据为所述所需数据;
第三确定模块,用于若所述时间差大于所述预设的时间间隔,则向服务器传输所述缓存区中存在的所述数据的版本号,并根据所述服务器的反馈确定所需数据,其中,所述服务器接收到所述版本号后,根据所述版本号判断是否需要进行数据更新,并在需要时,向终端设备反馈更新后的数据。
11.根据权利要求10所述的数据请求装置,其特征在于,所述第三确定模块包括:
第一确定单元,用于若根据所述服务器的反馈,确定所述缓存区中存在的所述数据不需要更新,则确定所述缓存区中存在的所述数据为所述所需数据;
第二确定单元,用于若接收到所述服务器反馈的更新后的数据,确定所述服务器反馈的所述更新后的数据为所述所需数据。
12.根据权利要求10所述的数据请求装置,其特征在于,还包括:
第六判断模块,用于在所述第四判断模块确定所述缓存区中存在所述数据请求对应的数据之后,并在所述第五判断模块获取所述数据请求的产生时间与上一次数据请求的产生时间之间的时间差之前,判断当前是否能够访问网络,若能够,再触发所述第五判断模块执行获取所述时间差的操作,若不能,则确定所述缓存区中存在的所述数据为所述所需数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610081220.0A CN107046551B (zh) | 2016-02-05 | 2016-02-05 | 一种数据请求、更新方法及相应装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610081220.0A CN107046551B (zh) | 2016-02-05 | 2016-02-05 | 一种数据请求、更新方法及相应装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107046551A CN107046551A (zh) | 2017-08-15 |
CN107046551B true CN107046551B (zh) | 2019-11-01 |
Family
ID=59543424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610081220.0A Active CN107046551B (zh) | 2016-02-05 | 2016-02-05 | 一种数据请求、更新方法及相应装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107046551B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107682431A (zh) * | 2017-09-28 | 2018-02-09 | 成都路行通信息技术有限公司 | 一种多设备间数据同步优化方法及系统 |
CN107835227A (zh) * | 2017-09-28 | 2018-03-23 | 成都路行通信息技术有限公司 | 一种数据请求方式优化方法 |
US20190313224A1 (en) * | 2018-04-10 | 2019-10-10 | GM Global Technology Operations LLC | Automated vehicle systems and control logic for smart data exchanges using enhanced bloom filters |
CN108897495B (zh) * | 2018-06-28 | 2023-10-03 | 北京五八信息技术有限公司 | 缓存更新方法、装置、缓存设备及存储介质 |
CN110166553A (zh) * | 2019-05-22 | 2019-08-23 | 苏州浪潮智能科技有限公司 | 一种数据访问方法、装置、设备及可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060427A (zh) * | 2006-04-19 | 2007-10-24 | 华为技术有限公司 | 实现远程软件升级的系统及方法 |
CN101358851A (zh) * | 2007-08-03 | 2009-02-04 | 北京灵图软件技术有限公司 | 一种在本地缓存导航数据的方法、系统及客户端装置 |
CN102571921A (zh) * | 2011-12-09 | 2012-07-11 | 广东威创视讯科技股份有限公司 | 移动设备上网的方法及装置 |
CN102932393A (zh) * | 2011-10-09 | 2013-02-13 | 广州盛华信息技术有限公司 | 实现访问互联网数据的方法及系统 |
CN104113567A (zh) * | 2013-04-18 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 内容分发网络的数据处理方法、装置及系统 |
CN104683329A (zh) * | 2015-02-06 | 2015-06-03 | 成都品果科技有限公司 | 一种移动设备客户端的数据缓存方法及系统 |
-
2016
- 2016-02-05 CN CN201610081220.0A patent/CN107046551B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101060427A (zh) * | 2006-04-19 | 2007-10-24 | 华为技术有限公司 | 实现远程软件升级的系统及方法 |
CN101358851A (zh) * | 2007-08-03 | 2009-02-04 | 北京灵图软件技术有限公司 | 一种在本地缓存导航数据的方法、系统及客户端装置 |
CN102932393A (zh) * | 2011-10-09 | 2013-02-13 | 广州盛华信息技术有限公司 | 实现访问互联网数据的方法及系统 |
CN102571921A (zh) * | 2011-12-09 | 2012-07-11 | 广东威创视讯科技股份有限公司 | 移动设备上网的方法及装置 |
CN104113567A (zh) * | 2013-04-18 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 内容分发网络的数据处理方法、装置及系统 |
CN104683329A (zh) * | 2015-02-06 | 2015-06-03 | 成都品果科技有限公司 | 一种移动设备客户端的数据缓存方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107046551A (zh) | 2017-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107046551B (zh) | 一种数据请求、更新方法及相应装置 | |
CN107943594B (zh) | 数据获取方法和装置 | |
US8275856B2 (en) | Mobile bookmarks | |
CN101741986B (zh) | 一种用于移动通讯设备终端的页面缓存方法 | |
CN105930020B (zh) | 一种管理终端应用程序的功能图标的方法及装置 | |
US20150143377A1 (en) | Dynamic scheduling of tasks for collecting and processing data using job configuration data | |
KR20160030381A (ko) | 웹 페이지 액세스 방법, 장치, 라우터, 프로그램 및 기록매체 | |
CN103237060B (zh) | 一种数据对象获取方法、装置及系统 | |
WO2017167050A1 (zh) | 配置信息生成、发送方法及资源加载方法和装置及系统 | |
CN106911782A (zh) | 一种数据读取方法及装置 | |
CN103209223A (zh) | 分布式应用会话信息共享方法、系统和应用服务器 | |
CN106599239A (zh) | 网页内容数据获取方法及服务器 | |
CN105900391A (zh) | 使用restlike api进行实时通信 | |
CN105681477B (zh) | 一种数据访问方法和一种服务器 | |
CN102523299B (zh) | 基于消息摘要进行内容标识的缓存方法 | |
CN101815087A (zh) | 一种移动通信终端的信息缓存方法 | |
CN102882974A (zh) | 一种通过网站识别版本号节省网站访问资源的方法 | |
CN102075570A (zh) | 一种基于关键字的http报文缓存机制的实现方法 | |
CN108173952A (zh) | 一种内容分发网络cdn的数据访问方法和装置 | |
CN107908769A (zh) | 违章数据查询方法、装置、系统、设备及可读存储介质 | |
CN106230978A (zh) | 分布式缓存同步方法、装置及系统 | |
CN110134738A (zh) | 分布式存储系统资源预估方法、装置 | |
CN110795650A (zh) | 网页开启方法、装置及计算机可读存储介质 | |
CN103440143A (zh) | 移动web应用升级系统及方法 | |
CN102163197A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231129 Address after: 230012 In the factory building of Anhui Guogou Energy Co., Ltd., 100 meters east of the intersection of Guanjing Road and Luban Road in Xinzhan District, Hefei City, Anhui Province Patentee after: Hefei Youquan Information Technology Co.,Ltd. Address before: 100020 2507, 21 / F, building 10, No. 93, Jianguo Road, Chaoyang District, Beijing Patentee before: YOUXINPAI (BEIJING) INFORMATION TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |