【技术实现步骤摘要】
请求处理方法、数据获取方法、装置及电子设备
[0001]本公开涉及计算机领域和金融科技领域,具体地涉及一种请求处理方法、数据获取方法、装置、设备、介质和程序产品。
技术介绍
[0002]Redis是一个Key
‑
Value数据结构的内存存储系统,用作数据库、缓存和消息代理。它支持支持字符串、哈希表、列表、集合、有序集合、位图等数据类型。Redis内置赋值、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。
[0003]但是,当Redis处理的请求过大时,性能会明显下降;同时由于Redis是单线程的,当处理的请求较大时容易存在阻塞等情况,从而影响其他进入的请求,进而影响Redis处理请求的效率。
技术实现思路
[0004]鉴于上述问题,本公开提供了一种请求处理方法、数据获取方法、装置、设备、介质和程序产品。
[0005]根据本公开的一个方面,提供了一种请求处理方法,包括:
[0006]接收来自客户端的数据缓存请求,其中,上述数据缓存请求包括待缓存键名和待缓存键值;
[0007]在确定上述待缓存键值的数据类型为字符串类型的情况下,确定上述待缓存键值的字节数;
[0008]在确定上述待缓存键值的字节数超过预设阈值的情况下,按照预设拆分规则对上述待缓存键值进行拆分,得到至少两个子键值,其中每个上述子键值具有拆分标识;
[0009]针对上述至少两个子 ...
【技术保护点】
【技术特征摘要】
1.一种请求处理方法,包括:接收来自客户端的数据缓存请求,其中,所述数据缓存请求包括待缓存键名和待缓存键值;在确定所述待缓存键值的数据类型为字符串类型的情况下,确定所述待缓存键值的字节数;在确定所述待缓存键值的字节数超过预设阈值的情况下,按照预设拆分规则对所述待缓存键值进行拆分,得到至少两个子键值,其中每个所述子键值具有拆分标识;针对所述至少两个子键值中的每个子键值,根据所述子键值的拆分标识和所述待缓存键名生成与所述子键值对应的子键名,得到子数据缓存请求,最终得到至少两个所述子数据缓存请求,其中,所述子数据缓存请求包括所述子键名和所述子键值;根据预设的第一标识和所述至少两个子键值的数目更新所述待缓存键值,得到更新后的数据缓存请求,其中,所述更新后的数据缓存请求包括所述待缓存键名和更新后的待缓存键值;以及向缓存服务器发送所述至少两个子数据缓存请求和所述更新后的数据缓存请求。2.根据权利要求1所述的方法,还包括:在所述按照预设拆分规则对所述待缓存键值进行拆分,得到至少两个子键值之前,调用预设的压缩工具对所述待缓存键值进行压缩处理,得到压缩键值;其中,在确定所述待缓存键值的字节数超过预设阈值的情况下,按照预设拆分规则对所述待缓存键值进行拆分,得到至少两个子键值包括:在确定压缩后键值的字节数超过所述预设阈值的情况下,按照预设拆分规则对所述压缩键值进行拆分,得到所述至少两个子键值。3.根据权利要求2所述的方法,还包括:在确定压缩键值的字节数未超过所述预设阈值的情况下,利用预设的第二标识和所述压缩后键值更新所述待缓存键值,得到新的键值;根据所述待缓存键名和所述新的键值生成新的数据缓存请求;向所述缓存服务器发送所述新的数据缓存请求。4.根据权利要求2或3所述的方法,其中,所述按照预设拆分规则对所述压缩键值进行拆分,得到所述至少两个子键值包括:循环地执行如下操作,直至压缩键值的当前字节数小于或等于预设数目的字节数:以所述压缩键值的当前字节数中的第一个字节为起点,沿第一方向移动预设数目的字节数后拆分,得到一个子键值,其中,当前字节数为压缩键值中未拆分的字符串的字节数。5.根据权利要求1所述的方法,还包括:在确定所述待缓存键值的数据类型不是字符串类型的情况下,利用与所述待缓存键值的数据类型对应的格式转换方式,对所述待缓存键值进行格式转换,得到字符串类型的待缓存键值。6.一种数据获取方法,包括:接收来自客户端的数据获取请求,其中,所述数据获取请求包括目标键名;根据所述目标键名获取与所述目标键名对应的目标键值;在确定所述目标键值包括第一标识的情况下,获取所述目标键值中包含的目标子键值
的目标数目;根据所述目标键名和所述目标数目确定至少两个目标子健名;针对所述至少两个目标子健名中的每个目标子键名,根据所述目标子键名获取与所述目标子键名对应的目标子键值,得到至少两个所述目标子键值;以及拼接至少两个所述目标子键值,得到拼接键值,并向所述客户端发送所述拼接键值。7....
【专利技术属性】
技术研发人员:吕鸥,刘飞,朱嘉桐,高灵杰,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。