本发明涉及计算机领域,尤其涉及一种reids内存管理采集系统及缓存记录处理方法。
背景技术:
系统数据处理能力的瓶颈主要在于规约解析后的数据入库能力。传统处理模式多为单线程存储(入库),造成存储阻塞。
技术实现要素:
本发明要解决的技术问题是:提供一种reids内存管理采集系统及缓存记录处理方法,以解决现有技术采用单线程存储造成存储阻塞的问题。
本发明的技术方案是:一种reids内存管理采集系统,包括数据库和应用程序,所述reids内存管理系统包括,
应用程序,用于采集外界数据,与连接池数据连通;
数据库,用于存储记录,与内存数据库数据连通;
连接池,连接池包括内存数据库、一个以上线程连接接口和控制器,用于连接池用于接收应用程序发送过来的记录,暂存记录和管理记录存储入数据库;
线程连接接口,用于接收应用程序发送过来的记录并将记录发送到内存数据库,与应用程序和内存数据库数据连通;
控制器,可控内存数据库写入和读取数据库,
内存数据库,用于暂存记录,能够存储1条以上记录,与一个以上线程连接接口数据连通。
进一步地,所述连接池设有阀值触发器,
阀值触发器,用于监控和判断内存数据库中的记录条数,与控制器数据连通。
进一步地,所述连接池设有计时器,
计时器,用于监控和判断当前时间,与控制器数据连通。
一种与所述的reids内存管理采集系统对应的缓存记录处理方法,所述方法包括以下步骤,
a1、设定阀值触发器触发值;
a2、连接池通过多线程连接接口接收应用程序发送过来的记录,并将记录缓存在内存数据库;
a3、阀值触发器检测内存数据库中的记录数量,如果记录数量大于阀值触发器触发值,阀值触发器向控制器发送写入信号;
a4、控制器控制内存数据库内的数据写入数据库。
一种与所述的reids内存管理采集系统对应的缓存记录处理方法,所述方法包括以下步骤,
b1、设定计时器触发值;
b2、连接池通过多线程连接接口接收应用程序发送过来的记录,并将记录缓存在内存数据库;
b3、计时器检测计时器当前值,如果当前值大于计时器触发值,计时器向控制器发送写入信号;
b4、控制器控制内存数据库内的数据写入数据库。
本发明的有益效果是:
与现有技术相比,本发明通过设置连接池,连接池设置内存数据库,内存数据库能够存储1条以上记录,连接池设有线程连接接口,连接池与数据库数据连通,连接池设有控制器,控制器可控内存数据库写入和读取数据库,既保证了连接资源不浪费又保证大容量数据采集、计算入库及多用户并发访问的性能。
附图说明
图1为本发明的结构示意图;
图2为本发明的阀值触发器缓存记录处理方法流程图;
图3为本发明的计时器缓存记录处理方法流程图;
图中:1数据库、2连接池、201内存数据库、202控制器、203计时器、204阀值触发器、205多线程连接接口、3应用程序。
具体实施方式
下面结合附图及具体的实施例对发明进行进一步介绍:
参考图1至图3,一种reids内存管理采集系统,包括数据库1和应用程序3,所述reids内存管理系统包括,
应用程序3,用于采集外界数据,与连接池2数据连通;
数据库1,用于存储记录,与内存数据库201数据连通;
连接池2,连接池2包括内存数据库201、一个以上线程连接接口205和控制器202,用于连接池2用于接收应用程序3发送过来的记录,暂存记录和管理记录存储入数据库1;
线程连接接口205,用于接收应用程序3发送过来的记录并将记录发送到内存数据库201,与应用程序3和内存数据库201数据连通;
控制器202,可控内存数据库201写入和读取数据库1,
内存数据库201,用于暂存记录,能够存储1条以上记录,与一个以上线程连接接口205数据连通。
控制器202为计算机程序的函数。使用时,应用程序3通过一个以上线程连接接口205将记录传输给内存数据库201,内存数据库201可先将记录暂存,分批次将累计在内存数据库201里的数据传输到数据库1,避免了大量数据需要入库时造成存储阻塞的问题,控制器202在适当时机将记录存储到数据库完成记录储存。
进一步地,所述连接池2设有阀值触发器204,阀值触发器204,用于监控和判断内存数据库201中的记录条数,与控制器202数据连通。阀值触发器204为计算机程序的函数,用于监控和判断记录条数。采用阀值触发器204,可以使记录在记录数达到设定阀值时整批传输到数据库1,避免了大量程序将记录一并传输到数据库1产生阻塞。
进一步地,所述连接池2设有计时器203,计时器203,用于监控和判断当前时间,与控制器202数据连通。计时器203为计算机程序的函数,用于监控和判断当前时间。采用计时器203,可以使记录在达到设定时限时,整批的传输到数据库1,避免了大量程序将记录一并传输到数据库1产生阻塞。
一种与所述reids内存管理采集系统对应的缓存记录处理方法,所述方法包括以下步骤,
a1、设定阀值触发器204触发值;
a2、连接池2通过多线程连接接口205接收应用程序3发送过来的记录,并将记录缓存在内存数据库201;
a3、阀值触发器204检测内存数据库201中的记录数量,如果记录数量大于阀值触发器204触发值,阀值触发器204向控制器202发送写入信号;
a4、控制器202控制内存数据库201内的数据写入数据库1。
一种与所述reids内存管理采集系统对应的缓存记录处理方法,所述方法包括以下步骤,
b1、设定计时器203触发值;
b2、连接池2通过多线程连接接口205接收应用程序3发送过来的记录,并将记录缓存在内存数据库201;
b3、计时器检测计时器当前值,如果当前值大于计时器203触发值,计时器203向控制器202发送写入信号;
b4、控制器202控制内存数据库201内的数据写入数据库1。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。