一种记忆请求的保存方法、装置、设备及介质制造方法及图纸

技术编号:37598584 阅读:14 留言:0更新日期:2023-05-18 11:47
本发明专利技术涉及数据缓存技术领域,公开了一种记忆请求的保存方法、装置、设备及介质,方法包括写入线程和存储线程,写入线程和存储线程是异步进行的;写入线程包括:实时接收记忆请求;将记忆请求进行序列化操作,获得二进制数据;将二进制数据写入至文件的结尾处;存储线程是循环进行的,包括:按照顺序和预设规则从文件中批量读取二进制数据;对读取的二进制数据进行反序列化操作,获取明文数据;将明文数据批量写入数据库。本发明专利技术通过写入线程和存储线程实现记忆请求的异步保存和异步读取,提高了服务器处理请求的性能,提高其信息保存至数据库的效率,大大降低了对数据库的冲击压力,其顺序写入文件的效率极高,大大缓解了接收请求的压力。压力。压力。

【技术实现步骤摘要】
一种记忆请求的保存方法、装置、设备及介质


[0001]本专利技术涉及数据缓存
,具体涉及了一种记忆请求的保存方法、装置、设备及介质。

技术介绍

[0002]一些现有的用来阅读公司公文、公告的APP,在阅读时由于这些公文公告存在较长的内容,每次看到了某个位置后,把网页关了后,下次再次进来的时候就没法自动定位到上一次看到的位置,即可以理解为没有自动记忆上次阅读到某个位置的功能。
[0003]因此为了满足这样的诉求,当用户在进行阅读公文、公告的时候,每隔几秒秒钟的样子客户端都会向后台发起一个请求,请求的大致信息就是记录该用户在这一篇公告阅读到了哪行位置,随着用户数越来越多的时候,请求也随之越来越多,每一次接收请求时,后台系统都要把这些请求数据写入到数据库中,在大数据量的情况下,会造成缓存数据的堆积,带来比较大的内存消耗,给系统带来不稳定。

技术实现思路

[0004]本专利技术提供一种记忆请求的保存方法、装置、设备及介质,以解决随着用户数越来越多的时候,记忆请求也随之越来越多,每一次接收请求时,后台系统都要把这些请求数据写入到数据库中,在大数据量的情况下,会造成缓存数据的堆积,带来比较大的内存消耗,给系统带来不稳定。的技术问题。
[0005]第一方面,提供了一种记忆请求的保存方法,包括写入线程和存储线程,其中,所述写入线程和存储线程是异步进行的;
[0006]所述写入线程包括:
[0007]实时接收所述记忆请求;
[0008]将所述记忆请求进行序列化操作,获得二进制数据;
[0009]将所述二进制数据写入至文件的结尾处;
[0010]所述存储线程是循环进行的,包括:
[0011]按照顺序和预设规则从所述文件中批量读取二进制数据;
[0012]对读取的二进制数据进行反序列化操作,获取明文数据;
[0013]将所述明文数据批量写入数据库。
[0014]第二方面,提供了一种记忆请求的保存装置,包括写入线程模块和存储线程模块,其中,
[0015]所述写入线程模块包括:
[0016]数据接收模块,用于实时接收所述记忆请求;
[0017]第一数据转化模块,用于将所述记忆请求进行序列化操作,获得二进制数据;
[0018]数据写入模块,用于将所述二进制数据写入至文件的结尾处;
[0019]所述存储线程模块包括:
[0020]数据读取模块,用于按照顺序和预设规则从所述文件中批量读取二进制数据;
[0021]第二数据转化模块,用于对读取的二进制数据进行反序列化操作,获取明文数据;
[0022]数据存储模块,用于将所述明文数据批量写入数据库。
[0023]第三方面,提供了一种计算机设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述一种记忆请求的保存方法的步骤。
[0024]第四方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述一种记忆请求的保存方法的步骤。
[0025]上述记忆请求的保存方法、装置、设备及介质,在接收到记忆请求后启动写入线程,将所述记忆请求转化成一段二进制数据,并按照顺序写入文件中;同时还会启动一个存储线程,按照预设规则从所述文件中读取所述二进制数据,并将所述二进制数据转化为明文信息数据,同时将所述明文信息数据按照批量SQL语法生成批量SQL内容后,将所述批量SQL内容写入数据库进行存储,写入线程和存储线程分别实现不同的功能,提高了服务器处理请求的性能,其次保存数据到文件中,采用了顺序写的方式,直接调用操作系统的mmap函数一步到位把记忆请求写到文件中,使其效率更高;通过存储线程不停的从文件中批量读取内容,然后批量写入到数据库,进一步提高其信息保存至数据库的效率,大大降低了对数据库的冲击压力;通过写文件的方式既稳定又可靠,还能充分利用操作系统的性能,顺序写文件效率极高,大大缓解了接收请求的压力。
附图说明
[0026]为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0027]图1为本专利技术一实施例中记忆请求的保存方法的一应用环境示意图;
[0028]图2为本专利技术实施例提供的记忆请求的保存方法的一个流程示意图;
[0029]图3为本专利技术实施例提供的新建文件的一个流程示意图;
[0030]图4为本专利技术实施例提供的读取二进制数据的一个流程示意图;
[0031]图5为本专利技术提出的一种记忆请求的保存装置的结构框图;
[0032]图6为本专利技术提出的一种记忆请求的保存装置的另一结构框图;
[0033]图7为本专利技术提出的一种记忆请求的保存装置中文件删除线程模块的结构框图;
[0034]图8为本专利技术一实施例中计算机设备的一结构示意图;
[0035]图9为本专利技术一实施例中计算机设备的另一结构示意图;
[0036]图10为适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
[0037]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施
例,都属于本专利技术保护的范围。
[0038]本专利技术实施例提供的记忆请求的保存方法可以应用在如图1所述的应用环境中,其中,客户端通过网络与服务端进行通信。服务端可以开启写入线程从客户端接收记忆请求,例如用户信息、当前阅读的位置进度信息和URL地址,服务端在接收到记忆请求后将记忆请求转化为一段二进制数据,并将其按照顺序写入文件中;服务端还可以开启存储线程,以按照预设规则从所述文件中读取所述二进制数据,并将其转化为明文信息后生成批量SOL内容,再将该批量SQL内容写入数据库中进行存储,实现记忆请求的异步保存。写入线程和存储线程分别实现不同的功能,提高了服务器处理请求的性能,其次保存数据到文件中,采用了顺序写的方式,直接调用操作系统的mmap函数一步到位把记忆请求写到文件中,使其效率更高;通过存储线程不停的从文件中批量读取内容,然后批量写入到数据库,进一步提高其信息保存至数据库的效率,大大降低了对数据库的冲击压力;通过写文件的方式既稳定又可靠,还能充分利用操作系统的性能,顺序写文件效率极高,大大缓解了接收请求的压力。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Ne本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种记忆请求的保存方法,其特征在于,包括写入线程和存储线程,其中,所述写入线程和存储线程是异步进行的;所述写入线程包括:实时接收所述记忆请求;将所述记忆请求进行序列化操作,获得二进制数据;将所述二进制数据写入至文件的结尾处;所述存储线程是循环进行的,包括:按照顺序和预设规则从所述文件中批量读取二进制数据;对读取的二进制数据进行反序列化操作,获取明文数据;将所述明文数据批量写入数据库。2.根据权利要求1所述的记忆请求的保存方法,其特征在于,所述将所述二进制数据写入至文件的结尾处之前还包括:判断当前文件的大小;若当前文件的大小小于预设的文件大小,则将所述二进制数据写入当前文件中;若当前文件大小大于或等于预设的文件大小,则自动生成新的文件,且将所述二进制数据写入新生成的文件中。3.根据权利要求1所述的记忆请求的保存方法,其特征在于,所述二进制数据包括时间戳,所述按照顺序和预设规则从所述文件中批量读取二进制数据包括:按照顺序及预设时间段从所述文件中批量读取所述二进制数据。4.根据权利要求1所述的记忆请求的保存方法,其特征在于,所述将所述二进制数据写入至文件的结尾处包括:所述二进制数据是按照数据行的形式写入至所述文件的结尾处;所述按照顺序和预设规则从所述文件中批量读取二进制数据包括:按照顺序及预设数据行数从所述文件中批量读取所述二进制数据。5.根据权利要求1所述的记忆请求的保存方法,其特征在于,所述按照顺序和预设规则从所述文件中批量读取二进制数据后还包括:从所述文件中读取完二进制数据时,记录当前的读取位置。6.根...

【专利技术属性】
技术研发人员:何辉
申请(专利权)人:平安付科技服务有限公司
类型:发明
国别省市:

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

1