一种缓存方法以及装置制造方法及图纸

技术编号:38389904 阅读:27 留言:0更新日期:2023-08-05 17:43
本申请实施例提供了一种缓存方法以及装置,属于通信技术领域。本申请根据GraphQL请求的请求方法和请求名称,判断是否需要缓存GraphQL请求,当需要缓存GraphQL请求时,获取GraphQL请求的Key值,根据Key值查询数据库,当数据库中存在Key值时,返回Key值对应的Value值。当数据库中不存在Key值时,通过请求函数进行处理,并对请求函数的处理结果进行缓存。如果相同的请求被频繁发起,从缓存中获取结果可以显著减少处理时间,提高响应速度。进一步地,避免了在接口调用的函数上进行缓存,而是在接口中直接进行缓存,缓存接口的缓存速度高,从而提升开发效率。而提升开发效率。而提升开发效率。

【技术实现步骤摘要】
一种缓存方法以及装置


[0001]本申请各实施例属于通信
,具体涉及一种缓存方法以及装置。

技术介绍

[0002]在web应用系统中,经常会出现一些需要对大量数据进行计算统计分析的操作,而这些数据的实时性要求并不高。
[0003]在传统的Restful接口下,由于几乎不存在强类型校验,因此很容易在接口调用的函数上将计算的结果进行缓存。
[0004]而在使用GraphQL接口下,由于存在强类型校验和大量的自定义类型,对其结果和输入参数进行序列化和反序列化就会十分繁琐,因此在接口调用的函数上进行缓存就十分困难,缓存接口的缓存速度低,从而导致开发效率低下。

技术实现思路

[0005]为了解决现有技术存在的在接口调用的函数上进行缓存就十分困难,缓存接口的缓存速度低,从而导致开发效率低下的技术问题,本专利技术提供了一种缓存方法及装置。
[0006]第一方面,本专利技术提供了一种缓存方法,包括:接收客户端发起的HTTP请求,HTTP请求中包括GraphQL请求;响应于HTTP请求,解析HTTP请求以获取客户端的本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种缓存方法,其特征在于,包括:接收客户端发起的HTTP请求,所述HTTP请求中包括GraphQL请求;响应于所述HTTP请求,解析所述HTTP请求以获取所述客户端的用户信息;根据所述用户信息对所述客户端进行认证;当所述客户端认证通过时,解析所述GraphQL请求以获取所述GraphQL请求的请求方法和请求名称;根据请求方法和请求名称查询系统内部的缓存表,判断是否需要缓存所述GraphQL请求;当不需要缓存所述GraphQL请求时,通过请求函数进行处理;当需要缓存所述GraphQL请求时,获取所述GraphQL请求的Key值,根据所述Key值查询数据库;当所述数据库中存在所述Key值时,返回所述Key值对应的Value值;当所述数据库中不存在所述Key值时,通过请求函数进行处理;根据所述请求函数的处理结果判断所述GraphQL请求是否存在错误,若是,向所述客户端返回所述请求函数的处理结果,并对所述请求函数的处理结果进行缓存;否则,向所述客户端返回错误提示。2.根据权利要求1所述的缓存方法,其特征在于,所述根据所述用户信息对所述客户端进行认证,具体包括:查询系统内部的认证缓存模块是否记录有所述用户信息;当所述认证缓存模块记录有所述用户信息时,确定所述客户端为合法用户,所述客户端认证通过;当所述认证缓存模块未记录有所述用户信息时,对所述客户端进行JWT认证。3.根据权利要求2所述的缓存方法,其特征在于,所述对所述客户端进行JWT认证,具体包括:将存储有所述用户信息的JWT字段按照预设符号进行分段为Header信息、Payload信息和Verify Signature信息;将所述Header信息、Payload信息和Verify Signature信息进行解密;对解密后的所述Header信息、Payload信息和Verify Signature信息依次进行校验;当解密后的所述Header信息、Payload信息和Verify Signature信息均校验成功时,确定所述客户端为合法用户,并将所述用户信息记录到所述认证缓存模块中;否则,确定所述客户端为非法用户。4.根据权利要求1所述的缓存方法,其特征在于,所述解析所述GraphQL请求以获取所述GraphQL请求的请求方法和请求名称,具体包括:检测当前请求的起始字符是否为GraphQL;当检测到当前请求的起始字符为GraphQL时,使用GraphQLVaildator验证器对GraphQL请求进行校验,获取所述GraphQL请求的请求方法和请求名称。5.根据权利要求4所述的缓存方法,其特征在于,所述使用GraphQLVaildator验证器对GraphQL请求进行校验,具体包括:对所述GraphQL请求进行词法分析,将所述GraphQL请求分解为多个Token词法单元;将多个所述Tok...

【专利技术属性】
技术研发人员:余尚坤朱文雷
申请(专利权)人:北京长亭科技有限公司
类型:发明
国别省市:

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

1