CN112052264A - 业务数据查询方法、装置、电子设备及可读存储介质 - Google Patents
业务数据查询方法、装置、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN112052264A CN112052264A CN202010780334.0A CN202010780334A CN112052264A CN 112052264 A CN112052264 A CN 112052264A CN 202010780334 A CN202010780334 A CN 202010780334A CN 112052264 A CN112052264 A CN 112052264A
- Authority
- CN
- China
- Prior art keywords
- data
- cache
- target response
- response data
- service
- 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
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/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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种业务数据查询方法、装置、电子设备及可读存储介质,其中方法包括:接收终端发送的业务访问请求,业务访问请求中携带业务标识;在业务访问请求对应的目标响应数据处于缓存重建的情况下,获取业务访问请求对应的第一业务处理接口处的请求并发数,第一业务处理接口对应于同一业务标识,请求并发数为接收业务访问请求的目标时刻或者包括目标时刻的预设时间窗口内对应的请求数量;在请求并发数大于第一阈值的情况下,根据备份缓存集合和目标响应数据的缓存重建情况,向终端反馈业务访问结果。本发明可以相对减轻线程阻塞程度,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种业务数据查询方法、装置、电子设备及可读存储介质。
背景技术
随着互联网的快速发展及互联网使用人数的增加,用户的访问量级及数据量非常大,由于用户对请求响应速度的要求,服务器系统偏向于读多写少等原因,导致单纯的基于数据库层的查询已满足不了现实需求,因此引入NoSQL(Not Only SQL,非关系型数据库)数据存储方式,具体为引入了以Redis(Remote Dictionary Server,远程字典服务)为主流的基于内存的非关系型数据库。但是由于缓存内存有限,服务器系统不会将所有数据都存储到缓存层,只存储常用的数据,并设置相应的过期时间。但是对于设置过期时间的数据,如果某些数据集中失效,并且失效期间并发大量请求,服务器系统由于查不到缓存数据,将会直接打到数据库层,导致数据库层压力过大甚至产生系统崩溃。
在用户请求查询时,如果缓存数据存在则直接返回,数据不存在也就是在缓存失效后,并发请求过来通过加锁方式或者队列方式进行数据库读取互斥访问,同一个请求只允许一个线程去访问数据库并执行相关业务逻辑处理然后写回到缓存中,其他线程一直阻塞直到缓存有数据可以读取到。此种方式可以解决并发请求都打到数据库层引起系统崩溃问题。
但如果在缓存重建的过程中涉及到业务操作处理复杂的情况,缓存写入时间较长,将导致所有请求都等待缓存信息写入,该种方式浪费资源且降低系统的吞吐量。
发明内容
本发明实施例提供一种业务数据查询方法、装置、电子设备及可读存储介质,以解决现有技术中缓存失效后在处理并发请求时由于线程大量阻塞引起的降低系统吞吐量的问题。
第一方面,本发明实施例提供一种业务数据查询方法,应用于服务器,包括:
接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;
在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;
在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
可选的,所述根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果,包括:
在所述备份缓存集合中查询是否存在所述目标响应数据;
在查询到所述目标响应数据的情况下,向所述终端反馈所述目标响应数据;
在未查询到所述目标响应数据的情况下,检测所述目标响应数据是否缓存重建完成,并在缓存重建完成后向所述终端反馈所述目标响应数据,在缓存重建未完成时向所述终端反馈访问失败的提示信息。
可选的,所述备份缓存集合为热点数据缓存集合;所述方法还包括:
根据最近最久未使用算法LFU,删除缓存数据集合中的部分数据,所述缓存数据集合中的缓存数据通过预设更新策略进行更新;
基于热点数据发现机制,在所述缓存数据集合的剩余数据中定时获取热点数据;
在获取的所述热点数据中筛选出访问频率大于第二阈值的第一热点数据,对所述第一热点数据执行数据查询和业务逻辑处理,获取目标热点数据;
将所述目标热点数据写入所述热点数据缓存集合,并设置所述目标热点数据的过期时间。
可选的,在接收到所述业务访问请求之后,还包括:
在缓存数据集合中查询是否存在所述目标响应数据;
若所述缓存数据集合中存在所述目标响应数据,向所述终端反馈所述目标响应数据;
若所述缓存数据集合中不存在所述目标响应数据,检测所述目标响应数据是否处于缓存重建;
在所述目标响应数据处于缓存重建的情况下,执行获取所述业务访问请求对应的第一业务处理接口处的请求并发数的步骤;
在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端。
可选的,所述检测所述目标响应数据是否处于缓存重建,包括:
采用远程字典服务Redis分布式锁机制,对所述业务标识加锁;
在加锁成功的情况下,确定所述目标响应数据未处于缓存重建;
在加锁失败的情况下,确定所述目标响应数据处于缓存重建;
其中,在加锁成功且将所述目标响应数据反馈至所述终端后,对所述业务标识进行解锁。
可选的,所述在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端,包括:
在所述目标响应数据未处于缓存重建的情况下,从数据库中提取与所述业务访问请求关联的第一数据,对所述第一数据执行数据查询和业务逻辑处理获取所述目标响应数据;
将所述目标响应数据写入所述缓存数据集合,并将所述目标响应数据反馈至所述终端。
可选的,在所述请求并发数小于或者等于所述第一阈值的情况下,还包括:
监测所述目标响应数据的缓存重建状态;
在缓存重建完成后,将所述目标响应数据反馈至所述终端。
第二方面,本发明实施例提供一种业务数据查询装置,应用于服务器,包括:
接收模块,用于接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;
第一获取模块,用于在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;
第一反馈模块,用于在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
可选的,所述第一反馈模块包括:
查询子模块,用于在所述备份缓存集合中查询是否存在所述目标响应数据;
第一反馈子模块,用于在查询到所述目标响应数据的情况下,向所述终端反馈所述目标响应数据;
第二反馈子模块,用于在未查询到所述目标响应数据的情况下,检测所述目标响应数据是否缓存重建完成,并在缓存重建完成后向所述终端反馈所述目标响应数据,在缓存重建未完成时向所述终端反馈访问失败的提示信息。
可选的,所述备份缓存集合为热点数据缓存集合;所述装置还包括:
删除模块,用于根据最近最久未使用算法LFU,删除缓存数据集合中的部分数据,所述缓存数据集合中的缓存数据通过预设更新策略进行更新;
第二获取模块,用于基于热点数据发现机制,在所述缓存数据集合的剩余数据中定时获取热点数据;
第三获取模块,用于在获取的所述热点数据中筛选出访问频率大于第二阈值的第一热点数据,对所述第一热点数据执行数据查询和业务逻辑处理,获取目标热点数据;
写入设置模块,用于将所述目标热点数据写入所述热点数据缓存集合,并设置所述目标热点数据的过期时间。
可选的,所述装置还包括:
查询模块,用于在所述接收模块接收到所述业务访问请求之后,在缓存数据集合中查询是否存在所述目标响应数据;
第二反馈模块,用于若所述缓存数据集合中存在所述目标响应数据,向所述终端反馈所述目标响应数据;
检测模块,用于若所述缓存数据集合中不存在所述目标响应数据,检测所述目标响应数据是否处于缓存重建;
控制模块,用于在所述目标响应数据处于缓存重建的情况下,控制第一获取模块获取所述业务访问请求对应的第一业务处理接口处的请求并发数;
获取反馈模块,用于在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端。
可选的,所述检测模块包括:
加锁设置子模块,用于采用远程字典服务Redis分布式锁机制,对所述业务标识加锁;
第一确定子模块,用于在加锁成功的情况下,确定所述目标响应数据未处于缓存重建;
第二确定子模块,用于在加锁失败的情况下,确定所述目标响应数据处于缓存重建;
其中,在加锁成功且将所述目标响应数据反馈至所述终端后,对所述业务标识进行解锁。
可选的,所述获取反馈模块包括:
第一处理子模块,用于在所述目标响应数据未处于缓存重建的情况下,从数据库中提取与所述业务访问请求关联的第一数据,对所述第一数据执行数据查询和业务逻辑处理获取所述目标响应数据;
第二处理子模块,用于将所述目标响应数据写入所述缓存数据集合,并将所述目标响应数据反馈至所述终端。
可选的,所述装置还包括:
监测模块,用于在所述请求并发数小于或者等于所述第一阈值的情况下,监测所述目标响应数据的缓存重建状态;
第三反馈模块,用于在缓存重建完成后,将所述目标响应数据反馈至所述终端。
第三方面,本发明实施例还提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的业务数据查询方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述的业务数据查询方法的步骤。
本发明实施例的技术方案,通过接收终端发送的业务访问请求,在业务访问请求对应的目标响应数据处于缓存重建的情况下,获取第一业务处理接口处的同一业务访问请求的请求并发数,在请求并发数大于第一阈值时,根据备份缓存集合和目标响应数据的缓存重建情况,向终端反馈业务访问结果,可以相对减轻线程阻塞程度,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1表示本发明实施例的业务数据查询方法示意图;
图2表示本发明实施例的业务数据查询方法的整体实施流程图;
图3表示本发明实施例的业务数据查询装置示意图之一;
图4表示本发明实施例的业务数据查询装置示意图之二;
图5表示本发明实施例的电子设备框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。
在本发明的各种实施例中,应理解,下述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本发明实施例针对缓存重建过程中,由于缓存写入时间较长、所有请求都等待缓存信息写入,所造成的资源浪费且降低服务器系统吞吐量的情况,提供了一种解决方式,基于分布式锁、并发统计和备份缓存方式进行高频缓存请求,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
下面对本发明实施例提供的业务数据查询方法进行介绍,该方法应用于服务器,如图1所示,该方法包括:
步骤101、接收终端发送的业务访问请求,所述业务访问请求中携带业务标识。
服务器首先接收终端发送的业务访问请求,其中终端所发送的业务访问请求中携带有业务标识,每一个业务对应于唯一的业务标识。服务器根据业务访问请求中携带的业务标识,可以识别业务类别,进而可以对业务访问请求进行类别划分。例如,服务器接收到终端1发送的携带业务标识1的业务访问请求,以及终端2发送的携带业务标识2的业务访问请求,则可以确定终端1和终端2对应于不同的业务类别,还可以根据业务标识1确定终端1所发送的业务访问请求所对应的业务类别,根据业务标识2确定终端2所发送的业务访问请求所对应的业务类别。
步骤102、在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量。
在接收到业务访问请求之后,可以检测业务访问请求对应的目标响应数据是否处于缓存重建状态,若目标响应数据处于缓存重建状态下,则表明已有其他终端先一步发起了相同的业务访问请求。此时需要针对当前业务访问请求,确定业务访问请求对应的第一业务处理接口,并统计第一业务处理接口处所对应的业务访问请求的请求并发数。其中,第一业务处理接口处对应的业务访问请求为相同的业务访问请求,即第一业务处理接口对应于同一业务标识。这里的请求并发数为接收业务访问请求的目标时刻对应的请求数量,或者为包括目标时刻的预设时间窗口内对应的请求数量,且预设时间窗口的时间长度可以调整。
步骤103、在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
在获取请求并发数之后,可以将请求并发数与第一阈值进行比较,在请求并发数大于第一阈值的情况下,表明第一业务处理接口处对应的业务访问请求的数量过多,此时若执行阻塞等待从缓存数据集合中获取对应的目标响应数据,会造成资源浪费且降低服务器系统的吞吐量。因此可以调用备份缓存集合,根据备份缓存集合和目标响应数据的缓存重建情况,确定业务访问结果,并将业务访问结果反馈至终端。
上述实施过程,可以在并发请求量大的情况下,调用备份缓存集合,基于备份缓存集合和目标响应数据的缓存重建情况,获取业务访问结果,相对减轻线程阻塞程度,提升服务器的稳定性与可用性,同时实现用户查询与缓存重建的平衡。
在本发明的一可选实施例中,所述根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果,包括:
在所述备份缓存集合中查询是否存在所述目标响应数据;
在查询到所述目标响应数据的情况下,向所述终端反馈所述目标响应数据;
在未查询到所述目标响应数据的情况下,检测所述目标响应数据是否缓存重建完成,并在缓存重建完成后向所述终端反馈所述目标响应数据,在缓存重建未完成时向所述终端反馈访问失败的提示信息。
在根据备份缓存集合和目标响应数据的缓存重建情况,向终端反馈业务访问结果时,首先需要在备份缓存集合中查询是否存在与业务访问请求对应的目标响应数据,若备份缓存集合中存在目标响应数据,则可以直接在备份缓存集合中提取目标响应数据,并将目标响应数据反馈至终端。
在备份缓存集合中不存在目标响应数据时,可以检测目标响应数据的缓存重建是否完成,若目标响应数据的缓存重建已完成,则可以在缓存数据集合中获取目标响应数据,然后将所获取的目标响应数据反馈至终端。若备份缓存集合中不存在目标响应数据,且目标响应数据的缓存重建未完成,则需要向终端反馈访问失败的提示信息,此时终端的业务数据访问请求失败。
例如,在接收到终端1发送的访问购物应用中的某件商品的业务访问请求时,若已有终端2发送针对该商品的业务访问请求,则表明该商品对应的详细信息(目标响应数据)处于缓存重建状态。此时可以判断在终端1发起业务访问请求的时刻,所对应的针对该商品的请求并发数,若请求并发数大于第一阈值(如10),则可以在预先建立的备份缓存集合中查询该商品的详细信息,若可以查询到,则可以直接向终端1以及其他终端(与终端1同时发起业务访问请求的终端)反馈该商品的详细信息。终端2在缓存重建完成后获取该商品的详细信息。需要说明的是,由于备份缓存集合中的数据可能不是最新数据,因此终端1与其他终端所获取的该商品的详细信息可能不是最新的信息。而终端2是在缓存重建完成后获取商品的详细信息,因此终端2所获取的商品信息为最新信息。
若在备份缓存集合中无法查询该商品的详细信息,则可以检测该商品对应的详细信息是否缓存重建完成,若缓存重建完成,则可以向终端2、终端1以及其他终端反馈该商品的详细信息。若缓存重建未完成,则可以向终端1反馈访问失败的提示信息。针对终端2而言,可以继续等待缓存重建。
在统计请求并发数时,也可以确定终端1发起业务访问请求的目标时刻,在包括目标时刻的一段时长(预设时间窗口)内统计请求并发数,如终端1发起业务访问请求的目标时刻为18:00,则可以在17点59分至18点01分统计请求并发数。若终端2是在17点59分03秒发起的针对该商品的业务访问请求,在统计请求并发数时可以将终端2进行统计,此时终端1是与终端2之间的间隔时长最短的终端。在请求并发数大于第一阈值时,可以在备份缓存集合中查询该商品的详细信息,若可以查询到,则可以直接向终端1以及其他终端(在17点59分至18点01分发起业务访问请求的终端,并排除终端2)反馈该商品的详细信息。终端2在缓存重建完成后获取该商品的详细信息。
若在备份缓存集合中无法查询该商品的详细信息,则可以检测该商品对应的详细信息是否缓存重建完成,若缓存重建完成,则可以向终端2、终端1以及其他终端反馈该商品的详细信息。若缓存重建未完成,则可以向终端1反馈访问失败的提示信息。针对终端2而言,可以继续等待缓存重建。
当然还可以有其他统计并发数的情况以及向终端反馈信息的情况,这里不再一一列举阐述。
上述实施过程,可以首先基于备份缓存集合查询目标响应数据,在无法获取目标响应数据时,根据目标响应数据的缓存重建状态向终端反馈目标响应数据或者访问失败的提示信息,可以最大程度的获取目标响应数据并减轻线程阻塞程度,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
在本发明的一可选实施例中,所述备份缓存集合为热点数据缓存集合;所述方法还包括:
根据最近最久未使用算法LFU,删除缓存数据集合中的部分数据,所述缓存数据集合中的缓存数据通过预设更新策略进行更新;
基于热点数据发现机制,在所述缓存数据集合的剩余数据中定时获取热点数据;
在获取的所述热点数据中筛选出访问频率大于第二阈值的第一热点数据,对所述第一热点数据执行数据查询和业务逻辑处理,获取目标热点数据;
将所述目标热点数据写入所述热点数据缓存集合,并设置所述目标热点数据的过期时间。
本发明实施例中的备份缓存集合可以为热点数据缓存集合,即备份缓存集合中的数据均为热点数据,服务器需要预先建立热点数据缓存集合,在建立热点数据缓存集合时,需要以缓存数据集合为基础。具体为:在用户访问量低时间段,根据LFU(The LeastRecently Used,最近最久未使用)算法,在缓存数据集合中删除掉一部分最近最久未使用的数据,或者删除掉一部分最近最少使用的数据。其中,缓存数据集合用于存储缓存数据,缓存数据可通过预设更新策略进行更新,如可以针对所存储的缓存数据,设定对应的缓存有效时长,在缓存数据在缓存数据集合中的时长到达缓存有效时长时,可以自动清除缓存数据,还可以定时清除在缓存数据集合中的停留时长大于时长阈值的缓存数据,其中缓存数据自加入缓存数据集合,到从缓存数据集合中清除所对应的时长为第一停留时长。当然本领域技术人员也可以根据实际情况采用其他方式进行数据更新。
然后针对缓存数据集合中的剩余数据,采用数据发现机制定时获取热点数据。在获取热点数据之后,可以基于所获取的热点数据进行筛选,筛选出访问频率大于第二阈值的第一热点数据,然后基于筛选出的第一热点数据,执行数据查询和业务逻辑处理,以挖掘出与第一热点数据相关的更多数据,根据第一热点数据以及挖掘出的相关数据组成目标热点数据,然后将目标热点数据写入热点数据缓存集合中,并针对目标热点数据设置过期时间(目标热点数据可对应于第一有效时长,第一有效时长可以大于或者等于缓存有效时长,也可以大于或者等于第一停留时长),可以避免后期已是非热点的数据的内存的占用。且由于可以定时获取热点数据,并设置目标热点数据的过期时间,可以保证热点数据缓存集合中数据的动态更新。
下面以一具体实例对上述过程进行阐述,设置LFU策略,在用户访问量低时间段,删除缓存数据集合中的最近一段时长内未使用过的数据,然后采用redis4.0热点数据发现机制,开启定时任务通过读取redis hot-keys获取热点数据,然后在所获取的热点数据中筛选出访问频率大于0.25的第一热点数据,并基于所获取的第一热点数据,获取第一热点数据更多的相关信息,以生成目标热点数据。如筛选出的第一热点数据为购物应用中商品A的编号信息,则可以基于商品A的编号信息获取商品A的更多相关信息,基于编号信息以及相关信息生成商品A的目标特点数据。然后将目标特点数据写入到热点数据缓存集合并设置过期时间,避免后期已是非热点的数据对内存的占用。
上述实施过程,可以基于缓存数据集合,采用对应的策略建立热点数据缓存集合,以提供备份数据,同时可以保证热点数据缓存集合中数据的动态更新,实现为终端提供更好的服务。
在本发明的一可选实施例中,在接收到所述业务访问请求之后,还包括:
在缓存数据集合中查询是否存在所述目标响应数据;
若所述缓存数据集合中存在所述目标响应数据,向所述终端反馈所述目标响应数据;
若所述缓存数据集合中不存在所述目标响应数据,检测所述目标响应数据是否处于缓存重建;
在所述目标响应数据处于缓存重建的情况下,执行获取所述业务访问请求对应的第一业务处理接口处的请求并发数的步骤;
在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端。
在接收到终端发送的业务访问请求之后,可以首先根据业务访问请求,在缓存数据集合中查询是否存在于业务访问请求对应的目标响应数据,在缓存数据集合中存在业务访问请求对应的目标响应数据时,可以直接向终端反馈查询到的目标响应数据。
若缓存数据集合中不存在业务访问请求所对应的目标响应数据,则可以检测目标响应数据是否处于缓存重建状态,若目标响应数据处于缓存重建状态,则可以执行以下过程:获取业务访问请求对应的第一业务处理接口处的请求并发数,比较请求并发数与第一阈值的大小,根据比较结果执行不同的操作。若目标响应数据未处于缓存重建状态,则可以获取目标响应数据并向终端反馈。
上述实施过程,可以在接收到业务访问请求之后,根据缓存数据集合中是否存在目标响应数据的情况执行不同的操作流程,以保证可以在不同的情况下向终端反馈相关信息。
在本发明的一可选实施例中,所述检测所述目标响应数据是否处于缓存重建,包括:
采用远程字典服务Redis分布式锁机制,对所述业务标识加锁;
在加锁成功的情况下,确定所述目标响应数据未处于缓存重建;
在加锁失败的情况下,确定所述目标响应数据处于缓存重建;
其中,在加锁成功且将所述目标响应数据反馈至所述终端后,对所述业务标识进行解锁。
在检测目标响应数据是否处于缓存重建状态时,可以基于Redis分布式锁机制对业务访问请求中携带的业务标识进行加锁。其中,Redis为单进程单线程模式,当终端1在访问服务器时,服务器会根据终端1的业务访问请求对Redis中的key(业务标识)进行加锁,此时只处理终端1的数据,当处理完终端1的访问请求后,对加锁状态中的key进行解锁。解锁后,继续处理终端2的访问。因为在同一时间下只能有一个key存在,所以避免了同一时间有两个事务调用一个模型,防止了出现脏读,造成数据的不稳定,提高了数据的稳定性和安全性。
在基于Redis分布式锁机制对业务标识进行加锁时,具体可以为:采用Redis分布式锁方式,尝试给业务标识加上锁,在上锁成功的情况下,表明目标响应数据未处于缓存重建,此时可以获取目标响应数据并反馈至终端。若上锁失败则表明目标响应数据正在被缓存重建,此时可以执行获取业务访问请求对应的第一业务处理接口处的请求并发数的操作。
其中,在上锁成功时,可以设置对应的锁定时长,以避免死锁的情况。如针对业务标识A上锁并设置对应的锁定时长为5秒,则在由于某种原因导致业务标识A的业务数据请求无法继续进行时,可以在到达锁定时长后自动解锁,不影响其他业务的进行。其中锁定时长通常需要大于或者等于业务处理时长,在成功获取目标响应数据后可以对业务标识进行解锁(删除分布式锁),也可以在到达锁定时长后自动解锁。
上述实施过程,基于Redis分布式锁机制判定目标响应数据是否处于缓存重建状态,可以基于判定结果执行不同的操作。
在本发明一可选实施例中,所述在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端,包括:
在所述目标响应数据未处于缓存重建的情况下,从数据库中提取与所述业务访问请求关联的第一数据,对所述第一数据执行数据查询和业务逻辑处理获取所述目标响应数据;
将所述目标响应数据写入所述缓存数据集合,并将所述目标响应数据反馈至所述终端。
在确定目标响应数据未处于缓存重建时,可以获取目标响应数据。其中在获取目标响应时,可以首先在数据库中提取与业务访问请求关联的第一数据,这里的第一数据为业务访问请求对应的响应数据。然后基于提取出的第一数据,执行数据查询和业务逻辑处理,以挖掘出与第一数据相关的更多数据,根据第一数据以及挖掘出的相关数据组成目标响应数据,然后将目标响应数据写入缓存数据集合中,并将目标响应数据反馈至终端。由于目标响应数据已经写入缓存数据集合中,针对相同的业务访问请求可以直接反馈目标响应数据。
例如,终端1发送了携带业务标识(第一房源标识)的业务访问请求,在缓存数据集合中未查询到第一房源标识对应的目标响应数据,且第一房源标识对应的目标响应数据未处于缓存重建状态,此时可以基于数据库提取出第一房源标识对应的第一数据(如房屋位置),并挖掘与第一数据相关的更多数据(如房屋大小、楼层、户型等数据),根据第一数据和相关数据组合成目标响应数据并写入缓存数据集合。在终端3发送携带第一房源标识的业务访问请求时,可以直接在缓存数据集合中查询对应的目标响应数据。
上述实施过程,可以在目标响应数据未缓存重建时,直接在数据库中提取与数据访问请求关联的响应数据,并基于响应数据进行挖掘获取目标响应数据以存储至缓存数据集合,以便于在接收到相同的业务访问请求时可以直接在缓存数据集合中提取目标响应数据反馈至终端。
在本发明一可选实施例中,在所述请求并发数小于或者等于所述第一阈值的情况下,还包括:
监测所述目标响应数据的缓存重建状态;
在缓存重建完成后,将所述目标响应数据反馈至所述终端。
在业务访问请求对应的目标响应数据处于缓存重建状态,且获取业务访问请求对应的第一业务处理接口处的请求并发数之后,可以将请求并发数与第一阈值进行比较,在请求并发数小于或者等于第一阈值时,可以执行阻塞等待,从缓存数据集合中获取目标响应数据。具体为:实时或者定时监测目标响应数据的缓存重建状态,在目标响应数据缓存重建完成后,可以将目标响应数据反馈至终端。其中在反馈目标响应数据时,可以向等待的多个终端反馈目标响应数据。
例如,在接收到终端1发送的业务访问请求时,若已有终端2发送相同业务访问请求,则表明该业务访问请求对应的目标响应数据处于缓存重建状态。此时可以判断在终端1发起业务访问请求的时刻,所对应的针对该业务访问请求的请求并发数,若请求并发数小于第一阈值(如10),则可以等待缓存重建完成,在缓存重建完成后,可以向终端2、终端1以及其他终端(与终端1同时发起业务访问请求的终端)反馈目标响应数据。
上述实施过程,在请求并发数的数量小于第一阈值时等待缓存重建完成,并在缓存重建完成后将获取的目标响应数据反馈至终端,可以在并发量小的情况下正常阻塞拿取数据,实现用户查询与缓存重建的平衡。
下面以一整体实施流程对本发明的实施过程进行阐述,如图2所示,包括:
步骤201、接收终端发送的携带业务标识的业务访问请求。
步骤202、检测缓存数据集合中是否存在对应的目标响应数据,若存在则执行步骤203,否则执行步骤204。
步骤203、提取缓存数据集合中的目标响应数据并反馈至终端,然后结束流程。
步骤204、检测目标响应数据是否处于缓存重建,若否,则执行步骤205,否则执行步骤206。
步骤205、基于Redis分布式锁对业务标识进行加锁,并获取目标响应数据反馈至终端,然后对业务标识进行解锁,至此可以结束流程。
步骤206、获取业务访问请求对应的第一业务处理接口在目标时刻或者预设时间窗口内的请求并发数,然后执行步骤207。
步骤207、检测请求并发数是否大于第一阈值,若否,则执行步骤208,否则执行步骤209。
步骤208、等待缓存重建,并在缓存重建完成后,获取目标响应数据反馈至终端,然后结束流程。
步骤209、根据备份缓存集合和目标响应数据的缓存重建情况,向终端反馈业务访问结果,然后结束流程。其中在备份缓存集合中查询到目标响应数据时,可以向终端反馈目标响应数据,在未查询到目标响应数据时,检测目标响应数据是否缓存重建完成,并在缓存重建完成后向终端反馈目标响应数据,在缓存重建未完成时向终端反馈访问失败的提示信息。
上述实施流程,通过并发统计,可以保证在并发量小的情况下正常阻塞拿取数据,在并发请求量大的情况下,从备份缓存集合中拿取数据返回,提升了服务器的稳定性与可用性,同时实现了用户查询与缓存重建的平衡。
为了易于理解,下面以一具体实例对本发明的实施过程进行阐述,接收终端1发送的携带第一房源标识的业务访问请求,在缓存数据集合中查询是否存在与第一房源标识对应的房源详细信息(目标响应数据),若存在则可以直接向终端1反馈,若不存在则可以对第一房源标识进行加锁并设置过期时间,在加锁成功的情况下,确定第一房源标识对应的房源详细信息未被缓存重建,此时可以在数据库中查询与第一房源标识对应的第一数据(如房屋位置),并基于第一数据进行挖掘获取房源详细信息反馈至终端,同时存储至缓存数据集合。在加锁失败的情况下,确定第一房源标识对应的房源详细信息在被缓存重建,表明终端2之前已经发起了携带第一房源标识的业务访问请求。此时可以在终端1发起业务访问请求的目标时刻(也可以为在包含目标时刻的预设时间窗口内),统计该业务访问请求的请求并发数,本实施例以统计目标时刻的请求并发数为例进行说明。若请求并发数小于或者等于第一阈值,则可以等待缓存重建,并在缓存重建完成后,向终端1、终端2以及其他终端(与终端1同时发起业务访问请求的终端)反馈房源详细信息。若请求并发数大于第一阈值,则可以在预先建立的备份缓存集合中查询房源详细信息,若可以查询到,则可以直接向终端1以及其他终端(与终端1同时发起业务访问请求的终端)反馈房源详细信息。终端2在缓存重建完成后获取房源详细信息。
若在备份缓存集合中无法查询房源详细信息,则可以检测房源详细信息是否缓存重建完成,若缓存重建完成,则可以向终端2、终端1以及其他终端反馈房源详细信息。若缓存重建未完成,则可以向终端1反馈访问失败的提示信息。针对终端2而言,可以继续等待缓存重建,针对其他终端则执行终端1的流程。
本发明实施例提供的业务数据查询方法,可以基于业务访问请求在缓存数据集合中查询目标响应数据,在查询失败后,基于分布式锁机制检测目标响应数据的缓存重建状态,在目标响应数据未缓存重建时直接获取目标响应数据反馈至终端,在目标响应数据处于缓存重建时进行并发统计,可以保证在并发量小的情况下正常阻塞拿取数据,在并发量大的情况下,从备份缓存集合中拿取数据返回,在备份缓存数据中不存在目标响应数据时,基于缓存重建结果向终端反馈对应信息,可以最大程度的获取目标响应数据并减轻线程阻塞程度,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
本发明实施例还提供一种业务数据查询装置,应用于服务器,如图3所示,包括:
接收模块301,用于接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;
第一获取模块302,用于在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;
第一反馈模块303,用于在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
可选的,如图4所示,所述第一反馈模块303包括:
查询子模块3031,用于在所述备份缓存集合中查询是否存在所述目标响应数据;
第一反馈子模块3032,用于在查询到所述目标响应数据的情况下,向所述终端反馈所述目标响应数据;
第二反馈子模块3033,用于在未查询到所述目标响应数据的情况下,检测所述目标响应数据是否缓存重建完成,并在缓存重建完成后向所述终端反馈所述目标响应数据,在缓存重建未完成时向所述终端反馈访问失败的提示信息。
可选的,所述备份缓存集合为热点数据缓存集合;所述装置还包括:
删除模块304,用于根据最近最久未使用算法LFU,删除缓存数据集合中的部分数据,所述缓存数据集合中的缓存数据通过预设更新策略进行更新;
第二获取模块305,用于基于热点数据发现机制,在所述缓存数据集合的剩余数据中定时获取热点数据;
第三获取模块306,用于在获取的所述热点数据中筛选出访问频率大于第二阈值的第一热点数据,对所述第一热点数据执行数据查询和业务逻辑处理,获取目标热点数据;
写入设置模块307,用于将所述目标热点数据写入所述热点数据缓存集合,并设置所述目标热点数据的过期时间。
可选的,所述装置还包括:
查询模块308,用于在所述接收模块301接收到所述业务访问请求之后,在缓存数据集合中查询是否存在所述目标响应数据;
第二反馈模块309,用于若所述缓存数据集合中存在所述目标响应数据,向所述终端反馈所述目标响应数据;
检测模块310,用于若所述缓存数据集合中不存在所述目标响应数据,检测所述目标响应数据是否处于缓存重建;
控制模块311,用于在所述目标响应数据处于缓存重建的情况下,控制第一获取模块302获取所述业务访问请求对应的第一业务处理接口处的请求并发数;
获取反馈模块312,用于在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端。
可选的,所述检测模块310包括:
加锁设置子模块3101,用于采用远程字典服务Redis分布式锁机制,对所述业务标识加锁;
第一确定子模块3102,用于在加锁成功的情况下,确定所述目标响应数据未处于缓存重建;
第二确定子模块3103,用于在加锁失败的情况下,确定所述目标响应数据处于缓存重建;
其中,在加锁成功且将所述目标响应数据反馈至所述终端后,对所述业务标识进行解锁。
可选的,所述获取反馈模块312包括:
第一处理子模块3121,用于在所述目标响应数据未处于缓存重建的情况下,从数据库中提取与所述业务访问请求关联的第一数据,对所述第一数据执行数据查询和业务逻辑处理获取所述目标响应数据;
第二处理子模块3122,用于将所述目标响应数据写入所述缓存数据集合,并将所述目标响应数据反馈至所述终端。
可选的,所述装置还包括:
监测模块313,用于在所述请求并发数小于或者等于所述第一阈值的情况下,监测所述目标响应数据的缓存重建状态;
第三反馈模块314,用于在缓存重建完成后,将所述目标响应数据反馈至所述终端。
本发明实施例提供的业务数据查询装置,可以基于业务访问请求在缓存数据集合中查询目标响应数据,在查询失败后,基于分布式锁机制检测目标响应数据的缓存重建状态,在目标响应数据未缓存重建时直接获取目标响应数据反馈至终端,在目标响应数据处于缓存重建时进行并发统计,可以保证在并发量小的情况下正常阻塞拿取数据,在并发量大的情况下,从备份缓存集合中拿取数据返回,在备份缓存数据中不存在目标响应数据时,基于缓存重建结果向终端反馈对应信息,可以最大程度的获取目标响应数据并减轻线程阻塞程度,实现了用户查询与缓存重建的平衡,提升了服务器的稳定性与可用性。
另一方面,本发明实施例还提供了一种电子设备,包括存储器、处理器、总线以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述业务数据查询方法中的步骤。
举例如下,图5示出了一种电子设备的实体结构示意图。
如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行如下方法:
接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
再一方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例提供的业务数据查询方法中的步骤。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种业务数据查询方法,应用于服务器,其特征在于,包括:
接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;
在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;
在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
2.根据权利要求1所述的业务数据查询方法,其特征在于,所述根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果,包括:
在所述备份缓存集合中查询是否存在所述目标响应数据;
在查询到所述目标响应数据的情况下,向所述终端反馈所述目标响应数据;
在未查询到所述目标响应数据的情况下,检测所述目标响应数据是否缓存重建完成,并在缓存重建完成后向所述终端反馈所述目标响应数据,在缓存重建未完成时向所述终端反馈访问失败的提示信息。
3.根据权利要求1所述的业务数据查询方法,其特征在于,所述备份缓存集合为热点数据缓存集合;所述方法还包括:
根据最近最久未使用算法LFU,删除缓存数据集合中的部分数据,所述缓存数据集合中的缓存数据通过预设更新策略进行更新;
基于热点数据发现机制,在所述缓存数据集合的剩余数据中定时获取热点数据;
在获取的所述热点数据中筛选出访问频率大于第二阈值的第一热点数据,对所述第一热点数据执行数据查询和业务逻辑处理,获取目标热点数据;
将所述目标热点数据写入所述热点数据缓存集合,并设置所述目标热点数据的过期时间。
4.根据权利要求1所述的业务数据查询方法,其特征在于,在接收到所述业务访问请求之后,还包括:
在缓存数据集合中查询是否存在所述目标响应数据;
若所述缓存数据集合中存在所述目标响应数据,向所述终端反馈所述目标响应数据;
若所述缓存数据集合中不存在所述目标响应数据,检测所述目标响应数据是否处于缓存重建;
在所述目标响应数据处于缓存重建的情况下,执行获取所述业务访问请求对应的第一业务处理接口处的请求并发数的步骤;
在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端。
5.根据权利要求4所述的业务数据查询方法,其特征在于,所述检测所述目标响应数据是否处于缓存重建,包括:
采用远程字典服务Redis分布式锁机制,对所述业务标识加锁;
在加锁成功的情况下,确定所述目标响应数据未处于缓存重建;
在加锁失败的情况下,确定所述目标响应数据处于缓存重建;
其中,在加锁成功且将所述目标响应数据反馈至所述终端后,对所述业务标识进行解锁。
6.根据权利要求4所述的业务数据查询方法,其特征在于,所述在所述目标响应数据未处于缓存重建的情况下,获取所述目标响应数据并反馈至所述终端,包括:
在所述目标响应数据未处于缓存重建的情况下,从数据库中提取与所述业务访问请求关联的第一数据,对所述第一数据执行数据查询和业务逻辑处理获取所述目标响应数据;
将所述目标响应数据写入所述缓存数据集合,并将所述目标响应数据反馈至所述终端。
7.根据权利要求1所述的业务数据查询方法,其特征在于,在所述请求并发数小于或者等于所述第一阈值的情况下,还包括:
监测所述目标响应数据的缓存重建状态;
在缓存重建完成后,将所述目标响应数据反馈至所述终端。
8.一种业务数据查询装置,应用于服务器,其特征在于,包括:
接收模块,用于接收终端发送的业务访问请求,所述业务访问请求中携带业务标识;
第一获取模块,用于在所述业务访问请求对应的目标响应数据处于缓存重建的情况下,获取所述业务访问请求对应的第一业务处理接口处的请求并发数,所述第一业务处理接口对应于同一所述业务标识,所述请求并发数为接收所述业务访问请求的目标时刻或者包括所述目标时刻的预设时间窗口内对应的请求数量;
第一反馈模块,用于在所述请求并发数大于第一阈值的情况下,根据备份缓存集合和所述目标响应数据的缓存重建情况,向所述终端反馈业务访问结果。
9.一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的业务数据查询方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的业务数据查询方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010780334.0A CN112052264B (zh) | 2020-08-05 | 2020-08-05 | 业务数据查询方法、装置、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010780334.0A CN112052264B (zh) | 2020-08-05 | 2020-08-05 | 业务数据查询方法、装置、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112052264A true CN112052264A (zh) | 2020-12-08 |
CN112052264B CN112052264B (zh) | 2021-08-10 |
Family
ID=73602463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010780334.0A Active CN112052264B (zh) | 2020-08-05 | 2020-08-05 | 业务数据查询方法、装置、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112052264B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632117A (zh) * | 2020-12-30 | 2021-04-09 | 广州华多网络科技有限公司 | 编号数据的处理方法、装置、电子设备及存储介质 |
CN112817985A (zh) * | 2021-02-25 | 2021-05-18 | 紫光云技术有限公司 | 一种基于云主机创建流量控制管理的方法 |
CN113010533A (zh) * | 2021-03-01 | 2021-06-22 | 上海钧正网络科技有限公司 | 基于加锁限制的数据库访问方法、系统、终端及存储介质 |
CN113676531A (zh) * | 2021-08-16 | 2021-11-19 | 北京百度网讯科技有限公司 | 电商流量削峰方法、装置、电子设备及可读存储介质 |
CN113723061A (zh) * | 2021-08-30 | 2021-11-30 | 上海幻电信息科技有限公司 | 基于多人协作框架的数据处理方法及装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0450917A2 (en) * | 1990-04-04 | 1991-10-09 | International Business Machines Corporation | Distributed computer systems |
CN101278540A (zh) * | 2005-10-03 | 2008-10-01 | 阿玛得斯两合公司 | 用于保持旨在与大型数据库对接的多层软件系统中的缓存内容的一致性的系统和方法 |
CN101719377A (zh) * | 2009-11-24 | 2010-06-02 | 成都市华为赛门铁克科技有限公司 | 功耗控制方法及装置 |
CN105119906A (zh) * | 2015-07-21 | 2015-12-02 | 北京泰策科技有限公司 | 一种用于防御dns递归攻击的方法、装置及系统 |
CN105138587A (zh) * | 2015-07-31 | 2015-12-09 | 小米科技有限责任公司 | 数据访问方法、装置和系统 |
CN105338026A (zh) * | 2014-07-24 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 数据资源的获取方法、装置和系统 |
CN105608115A (zh) * | 2015-12-11 | 2016-05-25 | 北京奇虎科技有限公司 | 数据获取方法与装置 |
CN106815287A (zh) * | 2016-12-06 | 2017-06-09 | 中国银联股份有限公司 | 一种缓存管理方法及装置 |
CN108334505A (zh) * | 2017-01-19 | 2018-07-27 | 阿里巴巴集团控股有限公司 | 一种数据处理方法、装置、服务器及库存系统 |
CN108551465A (zh) * | 2018-03-09 | 2018-09-18 | 平安科技(深圳)有限公司 | 服务器并发数控制方法、装置、计算机设备及存储介质 |
CN109976920A (zh) * | 2019-02-20 | 2019-07-05 | 深圳点猫科技有限公司 | 一种用于教育操作系统的并发式控制的实现方法及装置 |
US20200081839A1 (en) * | 2017-04-17 | 2020-03-12 | EMC IP Holding Company LLC | Method, device and computer readable storage media for managing storage system |
-
2020
- 2020-08-05 CN CN202010780334.0A patent/CN112052264B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0450917A2 (en) * | 1990-04-04 | 1991-10-09 | International Business Machines Corporation | Distributed computer systems |
CN101278540A (zh) * | 2005-10-03 | 2008-10-01 | 阿玛得斯两合公司 | 用于保持旨在与大型数据库对接的多层软件系统中的缓存内容的一致性的系统和方法 |
CN101719377A (zh) * | 2009-11-24 | 2010-06-02 | 成都市华为赛门铁克科技有限公司 | 功耗控制方法及装置 |
CN105338026A (zh) * | 2014-07-24 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 数据资源的获取方法、装置和系统 |
CN105119906A (zh) * | 2015-07-21 | 2015-12-02 | 北京泰策科技有限公司 | 一种用于防御dns递归攻击的方法、装置及系统 |
CN105138587A (zh) * | 2015-07-31 | 2015-12-09 | 小米科技有限责任公司 | 数据访问方法、装置和系统 |
CN105608115A (zh) * | 2015-12-11 | 2016-05-25 | 北京奇虎科技有限公司 | 数据获取方法与装置 |
CN106815287A (zh) * | 2016-12-06 | 2017-06-09 | 中国银联股份有限公司 | 一种缓存管理方法及装置 |
CN108334505A (zh) * | 2017-01-19 | 2018-07-27 | 阿里巴巴集团控股有限公司 | 一种数据处理方法、装置、服务器及库存系统 |
US20200081839A1 (en) * | 2017-04-17 | 2020-03-12 | EMC IP Holding Company LLC | Method, device and computer readable storage media for managing storage system |
CN108551465A (zh) * | 2018-03-09 | 2018-09-18 | 平安科技(深圳)有限公司 | 服务器并发数控制方法、装置、计算机设备及存储介质 |
CN109976920A (zh) * | 2019-02-20 | 2019-07-05 | 深圳点猫科技有限公司 | 一种用于教育操作系统的并发式控制的实现方法及装置 |
Non-Patent Citations (2)
Title |
---|
小柴的生活观: "分布式重建缓存的并发冲突 详解", 《HTTPS://BLOG.CSDN.NET/CHENSHUN123/ARTICLE/DETAILS/80502782》 * |
谢杰涛等: "Web系统高性能本地数据缓存实现机制", 《计算机应用研究》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112632117A (zh) * | 2020-12-30 | 2021-04-09 | 广州华多网络科技有限公司 | 编号数据的处理方法、装置、电子设备及存储介质 |
CN112817985A (zh) * | 2021-02-25 | 2021-05-18 | 紫光云技术有限公司 | 一种基于云主机创建流量控制管理的方法 |
CN113010533A (zh) * | 2021-03-01 | 2021-06-22 | 上海钧正网络科技有限公司 | 基于加锁限制的数据库访问方法、系统、终端及存储介质 |
CN113676531A (zh) * | 2021-08-16 | 2021-11-19 | 北京百度网讯科技有限公司 | 电商流量削峰方法、装置、电子设备及可读存储介质 |
CN113676531B (zh) * | 2021-08-16 | 2023-10-31 | 北京百度网讯科技有限公司 | 电商流量削峰方法、装置、电子设备及可读存储介质 |
CN113723061A (zh) * | 2021-08-30 | 2021-11-30 | 上海幻电信息科技有限公司 | 基于多人协作框架的数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112052264B (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112052264B (zh) | 业务数据查询方法、装置、电子设备及可读存储介质 | |
US10503720B2 (en) | Providing eventual consistency for multi-shard transactions | |
US8499004B2 (en) | File system with optimistic I/O operations on shared storage | |
US20150278282A1 (en) | Integrating database management system and external cache | |
US7328213B2 (en) | Transaction processing method, transaction control apparatus and program thereof | |
US7912821B2 (en) | Apparatus and method for data management | |
CN110704199B (zh) | 数据压缩方法、装置、计算机设备及存储介质 | |
CN112039970B (zh) | 一种分布式业务锁服务方法、服务端、系统及存储介质 | |
US11061889B2 (en) | Systems and methods of managing manifest refresh in a database | |
CN113342507B (zh) | 一种分布式锁服务实现方法、装置及计算机设备 | |
CN112905556B (zh) | 分布式系统的目录租约管理方法、装置、设备及存储介质 | |
US8132174B2 (en) | Concurrency management in cluster computing of business applications | |
CN113760976B (zh) | 业务的处理方法、装置、设备及存储介质 | |
CN113238815A (zh) | 一种接口访问控制方法、装置、设备及存储介质 | |
CN110941591A (zh) | 一种文件删除方法、装置、设备及可读存储介质 | |
CN113282626A (zh) | 基于Redis的缓存数据的方法、装置、计算机设备及存储介质 | |
US11394748B2 (en) | Authentication method for anonymous account and server | |
CN112559496A (zh) | 一种分布式数据库事务原子性实现方法及装置 | |
CN110554914B (zh) | 资源锁管理方法、装置、服务器及存储介质 | |
CN110377614B (zh) | 一种分布式环境下的订单处理锁系统 | |
CN108121514B (zh) | 元信息更新方法、装置、计算设备及计算机存储介质 | |
US9418097B1 (en) | Listener event consistency points | |
KR20230017329A (ko) | 동작 응답 방법, 동작 응답 장치, 전자장비, 저장 매체 및 컴퓨터 프로그램 | |
CN113448976B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
EP3686751A1 (en) | Method and system for data handling |
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 |