缓存处理方法以及装置制造方法及图纸

技术编号:24409314 阅读:31 留言:0更新日期:2020-06-06 08:28
本说明书实施例提供缓存处理方法以及装置,其中所述缓存处理方法包括:基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;根据所述缓存键获取对应的缓存的缓存值队列的队列长度;在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。

Cache processing method and device

【技术实现步骤摘要】
缓存处理方法以及装置
本说明书实施例涉及数据处理
,特别涉及一种缓存处理方法。本说明书一个或者多个实施例同时涉及一种缓存处理装置,一种计算设备,以及一种计算机可读存储介质。
技术介绍
随着互联网业务的发展,业务系统中针对数据的变更越来越频繁,而这些数据的变更可能引发业务系统的故障,为了防止对业务系统中数据的变更而引发重大故障或用户的访问请求流量熔断等问题,会采用灰度变更的方式,让变更慢慢对线上生效,以便出现因变更引发的问题时,可以很快控制影响面,并实现变更数据的回滚,目前有通过机器维度实现灰度功能,变更后首先触发单个服务器刷新,过一段时间再手工触发全量服务器刷新,然而无法保证用户两次请求的数据是在同一台服务器上,即无法保证用户两次请求的数据的一致性,从而对业务造成影响,因此需要提供更可靠的方案。
技术实现思路
有鉴于此,本说明书实施例提供了一种缓存处理方法。本说明书一个或者多个实施例同时涉及一种缓存处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。根据本说明书实施例的第一方面,提供了一种缓存处理方法,包括:基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;根据所述缓存键获取对应的缓存的缓存值队列的队列长度;在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。可选的,所述基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值,包括:基于所述灰度配置中包含的灰度时间确定针对所述缓存的缓存灰度时间;获取所述缓存对应的数据项的变更时间以及业务系统时间,所述变更时间是在所述基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键步骤执行之前将初始数据项变更为所述数据项的时间;根据所述业务系统时间与所述变更时间的差值,计算针对所述数据项的变更时长;判断所述变更时长是否大于等于所述缓存灰度时间;若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值。可选的,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:基于所述变更时长,确定在所述灰度配置中灰度用户的灰度比例;根据所述灰度比例,确定所述灰度用户的用户标识区间;判断所述用户标识是否在所述用户标识区间内;若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。可选的,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:基于所述变更时长以及所述灰度配置,确定所述变更时长对应的白名单用户的白名单用户标识;根据所述用户标识以及所述白名单用户标识,判断所述用户是否属于所述白名单用户;若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。可选的,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:基于所述变更时间,确定所述灰度配置中的灰度特征以及所述灰度特征的灰度特征值;根据所述用户标识获取所述用户针对所述灰度特征的用户特征值;判断所述用户特征值是否与所述灰度特征值匹配;若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。可选的,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:基于所述变更时长,确定在所述灰度配置中灰度用户的灰度比例、灰度特征以及所述灰度特征的灰度特征值;根据所述灰度比例,确定所述灰度用户的用户标识区间;判断所述用户标识是否存在于所述用户标识区间内;若存在,根据所述用户标识获取所述用户针对所述灰度特征的用户特征值;判断所述用户特征值是否与所述灰度特征值匹配;若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。可选的,所述针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回步骤执行之后,还包括:在接收到针对所述数据项的变更指令的情况下,根据所述变更指令携带的变更数据项对所述数据项进行更新;在所述缓存值队列中将存储于队首的缓存值进行删除;将所述变更数据项存储至所述缓存值队列的队尾。可选的,所述针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回步骤执行之后,还包括:在所述缓存值队列中将存储于队首的缓存值进行删除。可选的,在所述缓存灰度时间内,执行如下操作:获取所述缓存灰度时间内产生的异常数据;对所述异常数据进行异常分析,获得所述异常分析的分析结果;根据所述分析结果确定产生所述异常数据的异常原因。可选的,所述根据所述分析结果确定产生所述异常数据的异常原因步骤执行之后,还包括:在所述异常原因为所述数据项的情况下,在所述缓存值队列中将存储于队尾的缓存值进行删除;获取针对所述数据项在变更前的所述初始数据项,根据所述初始数据项更新所述数据项。根据本说明书实施例的第二方面,提供了一种缓存处理装置,包括:确定缓存键模块,被配置为基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;获取长度模块,被配置为根据所述缓存键获取对应的缓存的缓存值队列的队列长度;获取配置模块,被配置为在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;确定缓存值模块,被配置为基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;返回模块,被配置为针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。根据本说明书实施例的第三方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;根据所述缓存键获取对应的缓存的缓存值队列的队列长度;在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。<本文档来自技高网...

【技术保护点】
1.一种缓存处理方法,包括:/n基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;/n根据所述缓存键获取对应的缓存的缓存值队列的队列长度;/n在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;/n基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;/n针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。/n

【技术特征摘要】
1.一种缓存处理方法,包括:
基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键;
根据所述缓存键获取对应的缓存的缓存值队列的队列长度;
在所述队列长度大于长度阈值的情况下,获取所述缓存对应的灰度配置;
基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值;
针对所述目标缓存值进行业务逻辑的处理,将处理后获得的业务数据向所述用户返回。


2.根据权利要求1所述的缓存处理方法,所述基于所述灰度配置以及所述访问请求中携带的所述用户的用户标识,确定所述访问请求对应的目标缓存值,包括:
基于所述灰度配置中包含的灰度时间确定针对所述缓存的缓存灰度时间;
获取所述缓存对应的数据项的变更时间以及业务系统时间,所述变更时间是在所述基于用户的访问请求中携带的访问信息确定所述访问信息对应的缓存键步骤执行之前将初始数据项变更为所述数据项的时间;
根据所述业务系统时间与所述变更时间的差值,计算针对所述数据项的变更时长;
判断所述变更时长是否大于等于所述缓存灰度时间;
若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值。


3.根据权利要求2所述的缓存处理方法,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:
基于所述变更时长,确定在所述灰度配置中灰度用户的灰度比例;
根据所述灰度比例,确定所述灰度用户的用户标识区间;
判断所述用户标识是否在所述用户标识区间内;
若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;
若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。


4.根据权利要求2所述的缓存处理方法,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:
基于所述变更时长以及所述灰度配置,确定所述变更时长对应的白名单用户的白名单用户标识;
根据所述用户标识以及所述白名单用户标识,判断所述用户是否属于所述白名单用户;
若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;
若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。


5.根据权利要求2所述的缓存处理方法,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:
基于所述变更时间,确定所述灰度配置中的灰度特征以及所述灰度特征的灰度特征值;
根据所述用户标识获取所述用户针对所述灰度特征的用户特征值;
判断所述用户特征值是否与所述灰度特征值匹配;
若是,将所述缓存值队列中存储于队尾的缓存值确定为所述目标缓存值;
若否,将所述缓存值队列中存储于队首的缓存值确定为所述目标缓存值。


6.根据权利要求2所述的缓存处理方法,若所述判断所述变更时长是否大于等于所述缓存灰度时间子步骤的判断结果为否,执行如下操作:
基于所述变更时长,确定在所述灰度配置中灰度用户的灰度比例、灰度特征以及所述灰度特征的灰度特征值;
根据所述灰度比例,确定所述...

【专利技术属性】
技术研发人员:宋电涛
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1