一种日志缓存方法、系统、设备及计算机可读存储介质技术方案

技术编号:20448599 阅读:19 留言:0更新日期:2019-02-27 02:50
本申请公开了一种日志缓存方法、系统、设备及计算机可读存储介质,该方法包括:获取待缓存日志;在预设的可用缓存资源队列中取出目标缓存资源;缓存待缓存日志至目标缓存资源中;将目标缓存资源填充至预设的已用缓存资源队列中。本申请公开的一种日志缓存方法,借助预设的可用缓存资源队列存储可用缓存资源,借助预设的已用缓存资源队列存储已用缓存资源,这样可以根据可用缓存资源队列和已用缓存资源队列快速确定出缓存待缓存日志的目标缓存资源,进而可以提高将日志写入目标缓存资源的速率。本申请公开的一种日志缓存系统、设备及计算机可读存储介质也解决了相应技术问题。

A Log Caching Method, System, Equipment and Computer Readable Storage Media

This application discloses a log caching method, system, device and computer readable storage medium. The method includes: acquiring the log to be cached; extracting the target cache resource from the preset available cache resource queue; caching the log to be cached into the target cache resource; and filling the target cache resource into the preset used cache resource queue. A log caching method disclosed in the present application stores available caching resources by means of a preset available caching resource queue and a preset used caching resource queue to store used caching resources. This method can quickly determine the target caching resources of the cached log according to the available caching resource queue and the used cached resource queue, thereby improving the tardiness of writing logs to the target. The rate at which resources are stored. A log caching system, device and computer readable storage medium disclosed in this application also solve the corresponding technical problems.

【技术实现步骤摘要】
一种日志缓存方法、系统、设备及计算机可读存储介质
本申请涉及存储
,更具体地说,涉及一种日志缓存方法、系统、设备及计算机可读存储介质。
技术介绍
在存储系统中,需要多个CPU核心同时工作,经常根据CPU核数启动若干个线程负责IO处理,每个线程绑定到一个核上,来达到最高的系统性能。在多线程环境中,通常使用一定量的内存作为缓存,当需要记录日志时,首先将日志写入缓存中,那么快速将日志写入缓存中便是需要解决的一个问题。综上所述,如何提高日志写入缓存中的速率是目前本领域技术人员亟待解决的问题。
技术实现思路
本申请的目的是提供一种日志缓存方法,其能在一定程度上解决如何提高日志写入缓存中的速率的技术问题。本申请还提供了一种日志缓存系统、设备及计算机可读存储介质。为了实现上述目的,本申请提供如下技术方案:一种日志缓存方法,包括:获取待缓存日志;在预设的可用缓存资源队列中取出目标缓存资源;缓存所述待缓存日志至所述目标缓存资源中;将所述目标缓存资源填充至预设的已用缓存资源队列中。优选的,所述将所述目标缓存资源填充至预设的已用缓存资源队列中之后,还包括:在所述已用缓存资源队列中取出预设数量的已用缓存资源;将取出的所述预设数量的所述已用缓存资源填充至预设内存中;将所述预设内存中的信息写入目标文件中。优选的,所述将所述预设内存中的信息写入目标文件中之后,还包括:释放取出的所述预设数量的所述已用缓存资源。优选的,所述将取出的所述预设数量的所述已缓存资源填充至预设内存中,包括:将取出的所述预设数量的所述已用缓存资源拼接为目标可用缓存资源;将所述目标可用缓存资源填充至预设内存中。优选的,所述在预设的可用缓存资源队列中取出目标缓存资源,包括:锁定预设的所述可用缓存资源队列;在所述可用缓存资源队列的队列头取出所述目标缓存资源;解锁所述可用缓存资源队列。优选的,所述将所述目标缓存资源填充至预设的已用缓存资源队列中,包括:锁定预设的所述已用缓存资源队列;将所述目标缓存资源填充至所述已用缓存资源队列的队尾;解锁所述已用缓存资源队列。优选的,所述待缓存日志所占用的缓存资源的长度、所述可用缓存资源队列中单个缓存资源的长度及所述已用缓存资源队列中单个缓存资源的长度均相同。一种日志缓存系统,包括:第一获取模块,用于获取待缓存日志;第一取出模块,用于在预设的可用缓存资源队列中取出目标缓存资源;第一缓存模块,用于缓存所述待缓存日志至所述目标缓存资源中;第一填充模块,用于将所述目标缓存资源填充至预设的已用缓存资源队列中。一种日志缓存设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上任一所述的日志缓存方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述的日志缓存方法的步骤。本申请提供的一种日志缓存方法,获取待缓存日志;在预设的可用缓存资源队列中取出目标缓存资源;缓存待缓存日志至目标缓存资源中;将目标缓存资源填充至预设的已用缓存资源队列中。本申请提供的一种日志缓存方法,借助预设的可用缓存资源队列存储可用缓存资源,借助预设的已用缓存资源队列存储已用缓存资源,这样可以根据可用缓存资源队列和已用缓存资源队列快速确定出缓存待缓存日志的目标缓存资源,进而可以提高将日志写入目标缓存资源的速率;此外,由于提高了将日志写入目标缓存资源的速率,还可以避免同一时刻多线程对日志的锁定,降低多线程间的冲突,降低缓存日主对存储系统的性能影响。本申请提供的一种日志缓存系统、设备及计算机可读存储介质也解决了相应技术问题。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例提供的一种日志缓存方法的第一流程图;图2为本申请实施例提供的一种日志缓存方法的第二流程图;图3为本申请实施例提供的一种日志缓存系统的结构示意图;图4为本申请实施例提供的一种日志缓存设备的结构示意图;图5为本申请实施例提供的一种日志缓存设备的另一结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。在存储系统中,需要多个CPU核心同时工作,经常根据CPU核数启动若干个线程负责IO处理,每个线程绑定到一个核上,来达到最高的系统性能。在多线程环境中,通常使用一定量的内存作为缓存,当需要记录日志时,首先将日志写入缓存中,那么快速将日志写入缓存中便是需要解决的一个问题。本申请提供的一种日志缓存方法可以提高日志写入缓存中的速率。请参阅图1,图1为本申请实施例提供的一种日志缓存方法的第一流程图。本申请实施例提供的一种日志缓存方法,可以包括以下步骤:步骤S101:获取待缓存日志。实际应用中,可以先获取待缓存日志,待缓存日志的类型可以为存储系统生成的错误日志,也可以为存储系统记录的重要日志等。步骤S102:在预设的可用缓存资源队列中取出目标缓存资源。实际应用中,在获取待缓存日志后,便可以在预设的可用缓存资源队列中取出目标缓存资源。不难理解,可用缓存资源队列中保存着可以缓存日志的缓存资源,也即在预设可用缓存资源队列后,便需要统计可用缓存资源存储至可用缓存资源队列中。具体应用场景中,可以根据待缓存日志所对应的缓存资源的大小,在可用缓存资源队列中选取目标缓存资源,使得目标缓存资源能够满足缓存待缓存日志的要求。实际应用场景中,为了加快取出目标缓存资源的速率,可以采用锁定模式取出目标缓存资源,则在预设的可用缓存资源队列中取出目标缓存资源的步骤可以具体为:锁定预设的可用缓存资源队列;在可用缓存资源队列的队列头取出目标缓存资源;解锁可用缓存资源队列。步骤S103:缓存待缓存日志至目标缓存资源中。实际应用中,在取出目标缓存资源后,便可以缓存待缓存日志至目标缓存资源中。步骤S104:将目标缓存资源填充至预设的已用缓存资源队列中。实际应用中,在缓存待缓存日志至目标缓存资源中后,便可以将目标缓存资源填充至预设的已用缓存资源队列中,以此来表示目标缓存资源以被使用。实际应用中,在将日志进行缓存后,还可能需要将日志写入目标文件中,此时,在将目标缓存资源填充至预设的已用缓存资源队列中之后,还可以在已用缓存资源队列中取出预设数量的已用缓存资源;将取出的预设数量的已用缓存资源填充至预设内存中;将预设内存中的信息写入目标文件中。具体应用场景中,为了保证缓存待缓存日志的缓存资源的可用量,则将预设内存中的信息写入目标文件中之后,还可以释放取出的预设数量的已用缓存资源。具体的,为了提高将取出的预设数量的已用缓存资源填充至预设内存中的填充效率,且为了避免在填充过程中遗漏取出的已用缓存资源,将取出的预设数量的已缓存资源填充至预设内存中的步骤可以具体为:将取出的预设数量的已用缓存资源拼接为目标可用缓存资源;将目标可用缓存资本文档来自技高网...

【技术保护点】
1.一种日志缓存方法,其特征在于,包括:获取待缓存日志;在预设的可用缓存资源队列中取出目标缓存资源;缓存所述待缓存日志至所述目标缓存资源中;将所述目标缓存资源填充至预设的已用缓存资源队列中。

【技术特征摘要】
1.一种日志缓存方法,其特征在于,包括:获取待缓存日志;在预设的可用缓存资源队列中取出目标缓存资源;缓存所述待缓存日志至所述目标缓存资源中;将所述目标缓存资源填充至预设的已用缓存资源队列中。2.根据权利要求1所述的方法,其特征在于,所述将所述目标缓存资源填充至预设的已用缓存资源队列中之后,还包括:在所述已用缓存资源队列中取出预设数量的已用缓存资源;将取出的所述预设数量的所述已用缓存资源填充至预设内存中;将所述预设内存中的信息写入目标文件中。3.根据权利要求2所述的方法,其特征在于,所述将所述预设内存中的信息写入目标文件中之后,还包括:释放取出的所述预设数量的所述已用缓存资源。4.根据权利要求2所述的方法,其特征在于,所述将取出的所述预设数量的所述已缓存资源填充至预设内存中,包括:将取出的所述预设数量的所述已用缓存资源拼接为目标可用缓存资源;将所述目标可用缓存资源填充至预设内存中。5.根据权利要求1至4任一项所述的方法,其特征在于,所述在预设的可用缓存资源队列中取出目标缓存资源,包括:锁定预设的所述可用缓存资源队列;在所述可用缓存资源队列的队列头取出所述目标缓存资源;解...

【专利技术属性】
技术研发人员:刘如意孙京本李佩
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1