CN103309767A - 一种客户端日志处理方法和装置 - Google Patents

一种客户端日志处理方法和装置 Download PDF

Info

Publication number
CN103309767A
CN103309767A CN2012100595554A CN201210059555A CN103309767A CN 103309767 A CN103309767 A CN 103309767A CN 2012100595554 A CN2012100595554 A CN 2012100595554A CN 201210059555 A CN201210059555 A CN 201210059555A CN 103309767 A CN103309767 A CN 103309767A
Authority
CN
China
Prior art keywords
mmap
internal memory
daily record
memory
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012100595554A
Other languages
English (en)
Other versions
CN103309767B (zh
Inventor
张黎明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taobao China Software Co Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201210059555.4A priority Critical patent/CN103309767B/zh
Publication of CN103309767A publication Critical patent/CN103309767A/zh
Priority to HK13113093.4A priority patent/HK1185964A1/zh
Application granted granted Critical
Publication of CN103309767B publication Critical patent/CN103309767B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供一种客户端日志处理方法和装置,包括:采用双缓冲机制,预先设置两块MMAP内存,分别作为当前缓冲区和备用缓冲区,在当前缓冲区写满时,将备用缓冲区切换为当前缓冲区,并将写满的缓冲区中保存的日志发送至分布式文件系统进行保存,从而解决现有的磁盘空间有限导致的能够处理的日志数量受到限制,对日志处理能力有限的问题。且由于MMAP技术的特点,在运行过程中,系统会将缓冲区的数据强行输出到磁盘,因此,即使服务器重启或崩溃,缓冲区中保存的数据也可以通过磁盘恢复,不会丢失,从而保证了缓冲区中保存的日志的安全性。

Description

一种客户端日志处理方法和装置
技术领域
本申请涉及通信领域,尤其涉及一种客户端日志处理方法和装置。
背景技术
在现有的客户端日志采集处理方案中,客户端会在退出时,会将已采集到的日志压缩成数据包,例如压缩为RAR、zip等常见格式的数据包,并将该数据包发送给服务器。服务器根据相关协议对接收到的数据包进行合法性验证,在验证通过后将该数据包解压缩,将解压缩后获得的日志存放在日志文件中,并可以通过后台程序将日志传输至分布式系统基础架构(例如hadoop)实现的分布式文件系统(如HDFS,Hadoop Distributed File System)上。即,将采集的日志打印到日志文件上,日志系统在实现上有一个基于内存的日志队列,并通过后台程序将日志传输至HDFS,相当于通过日志系统实现缓冲,然后将日志传到HDFS。
现有的客户端日志处理方案存在如下问题:
由于服务器上的磁盘空间有限,存储信息的能力受到限制,随着日志数量的快速增长,服务器能够存储的日志的数量必然受到磁盘空间的局限,导致能够处理的日志数量受到限制,有限的磁盘空间无法满足日益增长的日志数量的需要。
另外,服务器重启或崩溃时,现有的客户端日志处理方案还存在日志队列上(内存上缓存)的日志将丢失的问题,由此导致保存的日志的安全性无法得到有效保证。
发明内容
本申请实施例提供一种客户端日志处理方法和装置,用于解决现有技术中,由于磁盘空间有限,导致能够处理的日志数量受到限制,以及保存的日志安全性较低的问题。
一种客户端日志处理方法,所述方法包括:
接收到日志时,将该日志写入作为当前缓冲区的第一文件内存映射MMAP内存;
在接收到第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,将所述日志写入所述第二MMAP内存,将返回内存已满提示的第一MMAP内存中保存的日志发送至分布式文件系统。
一种客户端日志处理装置,所述装置包括接收模块,日志写入模块、切换模块和发送模块,其中:
接收模块,用于接收日志;
日志写入模块,用于将接收到的日志写入作为当前缓冲区的第一文件内存映射MMAP内存;
切换模块,用于在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,,将所述日志写入所述第二MMAP内存,并触发发送模块;
发送模块,用于将返回内存已满提示的第一MMAP内存中保存的日志发送至分布式文件系统。
根据本申请实施例提供的方案,采用双缓冲机制,预先设置两块MMAP内存,分别作为当前缓冲区和备用缓冲区,在当前缓冲区写满时,将备用缓冲区切换为当前缓冲区,并将写满的缓冲区中保存的日志发送至分布式文件系统进行保存,从而解决现有的磁盘空间有限导致的能够处理的日志数量受到限制,对日志处理能力有限的问题。且由于MMAP技术的特点,在运行过程中,系统会将缓冲区的数据强行输出到磁盘,因此,即使服务器重启或崩溃,缓冲区中保存的数据也可以通过磁盘恢复,不会丢失,从而保证了缓冲区中保存的日志的安全性。
附图说明
图1为本申请提供的MMAP原理示意图;
图2为本申请实施例一提供的客户端日志处理方法的步骤流程图;
图3为本申请实施例二提供的前端处理方法的步骤流程图;
图4为本申请实施例三提供的后端双缓冲处理方法的步骤流程图;
图5为本申请实施例四提供的日志发送方法的步骤流程图;
图6为本申请实施例五提供的重启恢复方法的步骤流程图;
图7为本申请实施例六提供的客户端日志处理装置的结构示意图。
具体实施方式
文件内存映射(MMAP,map files or devices into memory)可以将一个文件或者其它对象映射进内存。具体的,如图1所示,MMAP可以把文件的一部分或全部内容直接映射到内存,这样文件中的信息位置就会在内存中有对应的地址空间,这时对文件的读写可以直接用指针来做,而不需要读/写(read/write)函数了。同时,操作系统可以将内存数据刷新保存到磁盘上。
本申请实施例提供的方案正是利用MMAP技术实现的。系统在启动的时候,会分配三块MMAP内存,其中两块轮流做磁盘的缓冲,在作为当前缓冲区的MMAP内存已满时,将作为备用缓冲区的MMMAP内存作为当前缓冲区,并将已满的MMAP内存中保存的日志发送到分布式文件系统,不断循环该过程,从而可以利用双缓冲技术解决现有的磁盘空间有限导致的能够处理的日志数量受到限制,对日志处理能力有限的问题。且在MMAP技术中,操作内存相当于操作文件,系统会自动输出(flush,即将缓冲区的数据强行输出)到磁盘,因此,在服务器发生异常,例如,所述服务器为jboss或tomcat时,服务器重启或所述服务器为Java虚拟机(Java Virtual Machine)时,服务器崩溃时,服务器的重启也不会对操作的日志产生影响,解决了现有技术中,服务器需要重启时,日志队列上(内存上缓存)的日志将丢失的问题。除用作缓冲区的两块MMAP内存之外,另外一块MMAP内存是来记录发送数据到分布式文件系统时的状态的。这样在服务器重启时,可以在断点处重新恢复数据发送,解决了现有技术中,数据的重新发送存在遗漏或者会被错误的重发的问题。
下面通过说明书附图和各实施例对本申请方案进行说明。
实施例一、
本申请实施例一提供一种客户端日志处理方法,该方法的步骤流程如图2所示,包括:
步骤101、将接收到的日志写入当前缓冲区。
在本实施例中,设置了两块MMAP内存作为缓冲区,在本步骤中,在接收到日志时,将该日志写入作为当前缓冲区的MMAP内存(可以称该MMAP内存为第一MMAP内存)。
具体的,可以接收客户端通过超文本传输协定(HTTP,HyperText TransferProtocol)的POST方式发送的数据包,并对该数据包进行循环冗余校验CRC校验,如CRC16校验,在校验通过时,可以启动异步线程将该数据包中的日志写入作为当前缓冲区的第一MMAP内存(即接收数据包与对该数据包的校验可以是同步的,即可以采用同一线程进行顺序处理,而将日志写入MMAP内存可以与接收数据包是异步的,即可以采用异步线程进行处理,从而可以增加系统的吞吐量),并可以进一步通知所述客户端日志发送成功。当然,在校验失败时,可以通知所述客户端日志发送失败。
步骤102、判断是否需要进行当前缓冲区的切换。
在本步骤中,可以根据是否接收到作为当前缓冲区的MMAP内存返回的内存已满的提示,判断作为当前缓冲区的MMAP内存是否已满,确定是否需要进行当前缓冲区的切换。
具体的,在本步骤中,在接收到第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,将所述日志写入所述第二MMAP内存,将返回内存已满提示的第一MMAP内存转换作为备用缓冲区,并将第一MMAP内存中保存的日志发送至分布式文件系统。当然,如果未接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示,说明第一MMAP内存未满,可以继续作为当前缓冲区保存日志,无需进行当前缓冲区的切换。
将返回内存已满提示的第一MMAP内存中保存的日志发送至分布式文件系统时,可以采用分块多线程的发送方式,将待发送的第一MMAP内存分割为N块,N可以为大于1的正整数,每块启动一个线程去发送或启动一个线程池去处理,从而加快发送的速度,避免在转换后作为当前缓冲区的第二MMAP内存空间已满,而转换后作为备用缓冲区的第一MMAP内存空间中的日志尚未传输至分布式文件系统,日志堆满两块缓冲空间的问题。
特别的,如果一旦产生了该问题,即在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示,并确定作为备用缓冲区的第二MMAP内存非空时,可以将接收到的日志打印到日志文件上,并可以利用后台程序定时扫描所述日志文件,并在每次扫描时,将所述日志文件相对上次扫描增加的日志上传至分布式文件系统。如果该问题产生的频率高于设定值,说明日志增长速度较高,可以通过加大作为缓冲区的MMAP内存空间,和/或加快对日志的发送速度(如设置M个线程来发送日志,M大于N)来进一步解决该问题。
具体的,将第一MMAP内存中保存的日志发送至分布式文件系统可以包括:将待发送的日志所在的第一MMAP内存的标识、第一MMAP内存中日志的总条数、第一MMAP内存被分割成的内存块数N,所述N为大于1的正整数、以及每个内存块中存储的待发送的日志数量,均写入到用于存放状态信息的第三MMAP内存(每个写入的内存块中待发送的日志数量分别占用不同偏移量的内存空间,避免在采用多个线程分别发送内存块中待发送的日志时,多线程共享一个变量,无需多线程同步,省去多线程同步带来的系统开销);在发送时,可以利用线程池中的N个线程发送第一MMAP内存中保存的日志,在任意一个线程发送一条日志完毕时,将第三MMAP内存中记录的该日志所存储在的内存块中待发送的日志数量减1,并可以将发送日志完毕的线程放回线程池以备下次使用,从而减少线程不停的启动停止带来的系统开销,减轻系统的负荷。
在步骤101和步骤102执行的过程中,操作系统可以将当前缓冲区和备用缓冲区分别对应的缓冲区文件、用于存放状态信息的MMAP内存对应的状态信息文件持久化(即将数据(如内存中的数据)保存到可永久保存的存储设备(如磁盘等))到硬盘。因此,当服务器重启时,可以将持久化到硬盘的第一MMAP内存对应的缓冲区文件加载映射到第一MMAP内存,将持久化到硬盘的第二MMAP内存对应的缓冲区文件加载映射到第二MMAP内存,将持久化到硬盘的状态信息文件加载映射到第三MMAP内存,将状态信息文件中记录的MMAP内存标识对应的第一MMAP内存作为备用缓冲区,将非状态信息文件记录的第二MMAP内存作为当前缓冲区,并可以根据所述状态信息文件,确定第一MMAP内存中存储的待发送的日志数量不为0的内存块,从线程池中取出线程继续发送该内存块中待发送的日志,从而可以在断点处重新恢复发送。
根据本申请实施例一提供的方案,不仅可以解决有限的磁盘空间与日益增长的日志数量之间的矛盾,保证服务器重启或崩溃时,缓冲区中保存的文件不丢失,以及在服务器重启时,可以进行发送状态恢复,从断点处恢复数据传送,避免数据漏发和重发,同时,由于在数据传送时,采用分块多线程传送方案,可以保证数据发送的及时性,且由于对数据包的校验和将数据包中的日志写入缓冲区采用异步线程,在向客户端返回响应信息时,还可以进一步保证响应的及时性。
下面通过实施例二对本申请实施例一提供的数据包校验过程进行说明,该过程可以称为前端处理。实施例三~实施例五用于对本申请实施例一提供的后端处理进行说明。后端处理可以包括利用设置的两块MMAP内存存储日志(对数据的双缓冲处理)的过程,向分布式文件系统传输日志的过程,并可以进一步包括服务器重启时的恢复操作内容。前端处理和后端处理构成一个完整的处理流程。实施例二~实施例五以前端处理和后端处理的主体为服务器为例进行说明。
实施例二、
本申请实施例二提供一种前端处理方法,该方法的步骤流程如图3所示,包括:
步骤201、接收数据包。
在本步骤中,移动客户端可以通过HTTP协议的POST方式,把收集的日志(以数据包的形式)传给服务器。
步骤202、进行校验。
在本步骤中,服务器在接收到数据包后,先对数据包中的数据进行完整性的crc16校验,判断是否完整,如果确定完整,可以继续执行步骤203~步骤205,如果确定非完整,说明数据包不完整或者数据包被篡改,可以跳转执行步骤206。
步骤203、获取日志。
在本步骤中,可以根据协议,对数据包解压拼装获得客户端发送的日志。
步骤204、触发后端处理。
在本步骤中,可以启动异步线程触发数据的后端处理。
步骤205、通知客户端发送成功。
在本步骤中,可以立即返回客户端告知客户端日志发送成功。
步骤206、通知客户端发送失败。
在本步骤中,可以立即返回客户端告知客户端日志发送失败,从而可以提示客户端重新发送所述日志。
实施例三、
本申请实施例三提供一种后端双缓冲处理方法,该方法的步骤流程如图4所示,包括:
步骤301、确定前端处理后获得的日志。
经过前端处理后,可以获得客户端发送的日志。并可以利用获得的日志异步触发后端双缓冲处理。
步骤302、将获得的日志写入当前缓冲区。
在本步骤中,可以将获得的日志写入作为当前缓冲区的MMAP内存。
步骤303、判断当前缓冲区是否出现空间不足的异常。
在本步骤中,可以通过判断当前缓冲区是否返回内存已满的提示,确定作为当前缓冲区的MMAP内存是否已经写满,并可以在接收到当前缓冲区返回的内存已满的提示时,确定作为当前缓冲区的MMAP内存已经写满,执行步骤304;否则,确定作为当前缓冲区的MMAP内存未写满,可以跳转执行步骤310。
步骤304、判断备用缓冲区是否为空。
在本步骤中,可以判断作为备用缓冲区的MMAP内存是否为空,在确定备用缓冲区为空时,可以继续执行步骤305~步骤307,否则,可以跳转执行步骤308~步骤309。
步骤305、切换当前缓冲区。
在本步骤中,可以将此时的备用缓冲区转换作为当前缓冲区使用。
步骤306、将日志写入当前缓冲区。
步骤307、发送日志至分布式文件系统。
在本步骤中,可以将已写满的转换后作为备用缓冲区的MMAP内存中保存的日志通过多个线程发送至分布式文件系统。在该MMAP内存中保存的日志发送完毕后,可以清空该MMAP内存,并可以跳转执行步骤310。
步骤308、将日志写入日志文件。
当确定出当前缓冲区已写满,备用缓冲区非空时,在本步骤中,可以将日志写入日志文件。
步骤309、将日志文件的增量发送至分布式文件系统。
在本步骤中,可以利用后台程序定时扫描所述日志文件,并在每次扫描时,将所述日志文件相对上次扫描增加的日志上传至分布式文件系统。
步骤310、结束本流程。
实施例四、
为了将作为备用缓冲区的MMAP内存中保存的日志发送至分布式文件系统,并保证在数据发送中出现异常(如服务器被重启或JVM崩溃)后,可以在服务器重启时恢复发送状态,本申请实施例四提供一种日志发送方法,每发送一条日志就记录到预先设置的MMAP空间中,实现与操作文件一样快速有效的操作内存,确保在数据出现异常时,可以根据该MMAP空间中记录的信息进行重启时的系统恢复。该方法的步骤流程如图5所示,包括:
步骤401、将待发送日志所在的缓存空间标识写入MMAP内存。
在本步骤中,在日志发送之前,可以将待发送的日志所在的MMAP内存(可以称为第一MMAP内存)标识写入用于存放状态信息的MMAP内存(可以称为第三MMAP内存)。
具体的,可以在第三MMAP内存空间偏移量为0的位置写入一个字节,该字节表示第一MMAP内存的标识。
步骤402、将待发送的日志总条数写入MMAP内存。
在本步骤中,在日志发送之前,还可以将第一MMAP内存中日志总条数写入第三MMAP内存。
具体的,可以在第三MMAP内存空间偏移量为1的位置写入4个字节,表示第一MMAP内存中日志总条数。
步骤403、将内存块数写入MMAP内存。
在本步骤中,在日志发送之前,还可以将第一MMAP内存被分割成的内存块数N,所述N为大于1的正整数,写入第三MMAP内存。
具体的,可以在第三MMAP内存空间偏移量为5的位置写入4个字节,表示第一MMAP内存被分割成的内存块数。
步骤404、将每个内存块中存储的待发送的日志数量写入MMAP内存。
在本步骤中,在日志发送之前,还可以将每个内存块中存储的待发送的日志数量(即将第一MMAP内存分割为N块后,每块内存中存储的待发送的日志数量),写入第三MMAP内存。
具体的,可以在第三MMAP内存空间偏移量为9的位置写入4*N个字节,表示每个内存块中存储的待发送的日志数量。虽然每个内存块中存储的待发送的日志数量是写入同一个MMAP空间的,但是并不存在多线程变量共享。MMAP方式虽然是一个文件映射到一块内存中,在这块内存中,写到内存的位置是不同的,有着特定的偏移量,因此不存在多线程共享一个变量的问题,省去了多线程的同步带来的开销。
实际上,步骤401~步骤404的执行可以不分先后,且步骤401~步骤404在第三MMAP内存空间中保存的信息均可以采用整型(int)数据。
步骤405、发送日志。
在本步骤中,可以采用分块多线程发送,且多线程可以采用线程池方案,在线程发送日志结束后并不马上退出,而是放回到线程池中以待下次使用。具体的,可以采用N条线程发送日志,在每个线程发送一条日志完毕时,将第三MMAP内存中记录的该日志所存储在的内存块中待发送的日志数量减1。
步骤406、发送完毕,清空缓存空间。
在本步骤中,可以在每个内存块中的日志均发送完毕时,清空第一MMAP内存,以待下次存放日志。
实施例五、
在服务器运行过程中,服务器会将当前缓冲区和备用缓冲区分别对应的缓冲区文件、用于存放状态信息的MMAP内存对应的状态信息文件持久化到硬盘,根据这一特点,本申请实施例五提供一种重启恢复方法,该方法的步骤流程如图6所示,包括:
步骤501、加载映射缓冲区文件和状态信息文件。
在本步骤中,服务器可以将持久化到硬盘的缓冲区文件和状态信息文件加载映射到对应的MMAP内存。具体的,可以根据缓冲区文件中的MMAP内存标识,将持久化到硬盘的第一MMAP内存对应的缓冲区文件加载映射到第一MMAP内存,将持久化到硬盘的第二MMAP内存对应的缓冲区文件加载映射到第二MMAP内存,将持久化到硬盘的状态信息文件加载映射到第三MMAP内存。
步骤502、确定备用缓冲区。
在本步骤中,可以将状态信息文件记录的MMAP内存标识对应的第一MMAP内存确定为备用缓冲区。
步骤503、确定当前缓冲区。
在本步骤中,可以将非状态信息文件记录的第二MMAP内存作为当前缓冲区。
当然,步骤502和步骤503的执行可以不分先后。
步骤504、确定是否存在待发送的日志数量不为0的内存块。
在本步骤中,可以遍历状态信息文件记录的N个内存块分别对应的待发送的日志数量,确定备用缓冲区中是否存在待发送的日志数量不为0的内存块,如果存在,可以继续执行步骤505,否则,可以执行步骤506。
步骤505、继续发送日志。
在本步骤中,可以从线程池中获取线程,针对待发送的日志数量不为0的内存块,继续发送日志,并可以在每个内存块中待发送的日志数量均为0时,确认日志发送完毕,并可以继续执行步骤506。
步骤506、确认重启恢复完毕。
与本申请实施例一~实施例五基于同一发明构思,提供以下的装置。
实施例六、
本申请实施例六提供一种客户端日志处理装置,该装置可以集成在服务器中,该装置的结构可以如图7所示,包括接收模块11、日志写入模块12、切换模块13和发送模块14,其中:
接收模块11用于接收日志;日志写入模块12用于将接收到的日志写入作为当前缓冲区的第一文件内存映射MMAP内存;切换模块13用于在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,,将所述日志写入所述第二MMAP内存,并触发发送模块;发送模块14用于将返回内存已满提示的第一MMAP内存中保存的日志发送至分布式文件系统。
所述装置还包括信息写入模块15,用于将待发送的日志所在的第一MMAP内存的标识、第一MMAP内存中日志的总条数、第一MMAP内存被分割成的内存块数N,所述N为大于1的正整数、以及每个内存块中存储的待发送的日志数量,均写入到用于存放状态信息的第三MMAP内存;
发送模块14具体用于利用线程池中的N个线程发送第一MMAP内存中保存的日志,在任意一个线程发送一条日志完毕时,将第三MMAP内存中该日志所存储在的内存块中存储的待发送的日志数量减1,以及,将发送日志完毕的线程放回线程池。
所述装置还包括加载模块16和确定模块17:
加载模块16用于将持久化到硬盘的第一MMAP内存对应的缓冲区文件加载映射到第一MMAP内存,将持久化到硬盘的第二MMAP内存对应的缓冲区文件加载映射到第二MMAP内存,将持久化到硬盘的状态信息文件加载映射到第三MMAP内存;
确定模块17用于将状态信息文件中记录的MMAP内存标识对应的第一MMAP内存作为备用缓冲区,将非状态信息文件记录的第二MMAP内存作为当前缓冲区;
所述发送模块14还用于根据所述状态信息文件,确定第一MMAP内存中存储的待发送的日志数量不为0的内存块,从线程池中取出线程继续发送该内存块中待发送的日志。
所述装置还包括打印模块18和上传模块19,其中:
打印模块18用于在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示,并确定作为备用缓冲区的第二MMAP内存非空时,将接收到的日志打印到日志文件上;
上传模块19用于利用后台程序定时扫描所述日志文件,并在每次扫描时,将所述日志文件相对上次扫描增加的日志上传至分布式文件系统。
所述接收模块11具体用于接收客户端通过超文本传输协定HTTP的POST方式发送的数据包,并对该数据包进行循环冗余校验CRC校验,在校验通过时,触发日志写入模块;
所述日志写入模块12具体用于启动异步线程将该数据包中的日志写入作为当前缓冲区的第一MMAP内存。
本申请各实施例提供的方案可以通过java语言实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种客户端日志处理方法,其特征在于包括:
接收到日志时,将该日志写入作为当前缓冲区的第一文件内存映射MMAP内存;
在接收到第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,将所述日志写入所述第二MMAP内存,将返回内存已满提示的第一MMAP内存中保存的日志发送至文件系统。
2.如权利要求1所述的方法,其特征在于,将返回内存已满提示的第一MMAP内存中保存的日志发送至分布式文件系统之前,还包括:
将待发送的日志所在的第一MMAP内存的标识、第一MMAP内存中日志的总条数、第一MMAP内存被分割成的内存块数N,所述N为大于1的正整数、以及每个内存块中存储的待发送的日志数量,均写入到用于存放状态信息的第三MMAP内存;
将返回内存已满提示的第一MMAP内存中保存的日志发送至文件系统,具体包括:
利用线程池中的N个线程发送第一MMAP内存中保存的日志;
在任意一个线程发送一条日志完毕时,将第三MMAP内存中记录的该日志所存储在的内存块中待发送的日志数量减1;以及
将发送日志完毕的线程放回线程池。
3.如权利要求2所述的方法,其特征在于,在服务器重启时,所述方法还包括:
将持久化到硬盘的第一MMAP内存对应的缓冲区文件加载映射到第一MMAP内存,将持久化到硬盘的第二MMAP内存对应的缓冲区文件加载映射到第二MMAP内存,将持久化到硬盘的状态信息文件加载映射到第三MMAP内存;
将状态信息文件中记录的MMAP内存标识对应的第一MMAP内存作为备用缓冲区,将非状态信息文件记录的第二MMAP内存作为当前缓冲区;
根据所述状态信息文件,确定第一MMAP内存中存储的待发送的日志数量不为0的内存块,从线程池中取出线程继续发送该内存块中待发送的日志。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示,并确定作为备用缓冲区的第二MMAP内存非空时,将接收到的日志打印到日志文件上;
利用后台程序定时扫描所述日志文件,并在每次扫描时,将所述日志文件相对上次扫描增加的日志上传至文件系统。
5.如权利要求1~4任一所述的方法,其特征在于,接收到日志时,将该日志写入作为当前缓冲区的第一MMAP内存,具体包括:
接收客户端通过超文本传输协定HTTP的POST方式发送的数据包;
并对该数据包进行循环冗余校验CRC校验,在校验通过时,启动异步线程将该数据包中的日志写入作为当前缓冲区的第一MMAP内存。
6.一种客户端日志处理装置,其特征在于包括:接收模块,日志写入模块、切换模块和发送模块,其中:
接收模块,用于接收日志;
日志写入模块,用于将接收到的日志写入作为当前缓冲区的第一文件内存映射MMAP内存;
切换模块,用于在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示时,判断作为备用缓冲区的第二MMAP内存是否为空,在确定所述第二MMAP内存为空时,将所述第二MMAP内存转换作为当前缓冲区,将所述日志写入所述第二MMAP内存,并触发发送模块;
发送模块,用于将返回内存已满提示的第一MMAP内存中保存的日志发送至文件系统。
7.如权利要求6所述的装置,其特征在于,还包括信息写入模块,用于将待发送的日志所在的第一MMAP内存的标识、第一MMAP内存中日志的总条数、第一MMAP内存被分割成的内存块数N,所述N为大于1的正整数、以及每个内存块中存储的待发送的日志数量,均写入到用于存放状态信息的第三MMAP内存;
发送模块,具体用于利用线程池中的N个线程发送第一MMAP内存中保存的日志,在任意一个线程发送一条日志完毕时,将第三MMAP内存中记录的该日志所存储在的内存块中待发送的日志数量减1,以及,将发送日志完毕的线程放回线程池。
8.如权利要求7所述的装置,其特征在于,还包括加载模块和确定模块:
加载模块,用于将持久化到硬盘的第一MMAP内存对应的缓冲区文件加载映射到第一MMAP内存,将持久化到硬盘的第二MMAP内存对应的缓冲区文件加载映射到第二MMAP内存,将持久化到硬盘的状态信息文件加载映射到第三MMAP内存;
确定模块,用于将状态信息文件中记录的MMAP内存标识对应的第一MMAP内存作为备用缓冲区,将非状态信息文件记录的第二MMAP内存作为当前缓冲区;
所述发送模块,还用于根据所述状态信息文件,确定第一MMAP内存中存储的待发送的日志数量不为0的内存块,从线程池中取出线程继续发送该内存块中待发送的日志。
9.如权利要求6所述的装置,其特征在于,还包括:
打印模块,用于在接收到作为当前缓冲区的第一MMAP内存返回的内存已满的提示,并确定作为备用缓冲区的第二MMAP内存非空时,将接收到的日志打印到日志文件上;
上传模块,用于利用后台程序定时扫描所述日志文件,并在每次扫描时,将所述日志文件相对上次扫描增加的日志上传至分布式文件系统。
10.如权利要求6~9任一所述的装置,其特征在于,所述接收模块,具体用于接收客户端通过超文本传输协定HTTP的POST方式发送的数据包,并对该数据包进行循环冗余校验CRC校验,在校验通过时,触发日志写入模块;
所述日志写入模块,具体用于启动异步线程将该数据包中的日志写入作为当前缓冲区的第一MMAP内存。
CN201210059555.4A 2012-03-08 2012-03-08 一种客户端日志处理方法和装置 Active CN103309767B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210059555.4A CN103309767B (zh) 2012-03-08 2012-03-08 一种客户端日志处理方法和装置
HK13113093.4A HK1185964A1 (zh) 2012-03-08 2013-11-25 種客戶端日誌處理方法和裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210059555.4A CN103309767B (zh) 2012-03-08 2012-03-08 一种客户端日志处理方法和装置

Publications (2)

Publication Number Publication Date
CN103309767A true CN103309767A (zh) 2013-09-18
CN103309767B CN103309767B (zh) 2016-01-13

Family

ID=49135019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210059555.4A Active CN103309767B (zh) 2012-03-08 2012-03-08 一种客户端日志处理方法和装置

Country Status (2)

Country Link
CN (1) CN103309767B (zh)
HK (1) HK1185964A1 (zh)

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678171A (zh) * 2013-12-10 2014-03-26 北京京诚瑞达电气工程技术有限公司 变频器数据曲线实时记录方法及装置
CN103885726A (zh) * 2014-03-20 2014-06-25 东蓝数码股份有限公司 一种高效的多线程日志写入方法
CN104486107A (zh) * 2014-12-05 2015-04-01 曙光信息产业(北京)有限公司 一种日志采集装置及方法
CN104899117A (zh) * 2015-06-17 2015-09-09 江苏师范大学 面向非易失性内存的内存数据库并行日志方法
CN104967696A (zh) * 2015-07-29 2015-10-07 网神信息技术(北京)股份有限公司 日志发送方法和装置
CN105516307A (zh) * 2015-12-09 2016-04-20 浪潮电子信息产业股份有限公司 一种基于压缩的优化云存储系统日志存储的方法
CN107038075A (zh) * 2015-07-14 2017-08-11 阿里巴巴集团控股有限公司 消息队列系统以及实现消息通信的方法
CN107180051A (zh) * 2016-03-11 2017-09-19 华为技术有限公司 一种日志管理方法、服务器
CN107590182A (zh) * 2017-08-03 2018-01-16 华南理工大学 一种分布式日志收集方法
CN107844405A (zh) * 2017-10-12 2018-03-27 华为技术有限公司 日志处理方法及装置、服务器
CN107977326A (zh) * 2017-11-13 2018-05-01 广州市雅江光电设备有限公司 Dmx数据双缓冲方法、装置
CN108132757A (zh) * 2016-12-01 2018-06-08 阿里巴巴集团控股有限公司 数据的存储方法、装置及电子设备
CN108182292A (zh) * 2018-01-30 2018-06-19 广东欧珀移动通信有限公司 应用于智能音箱的日志文件处理方法、装置及智能音箱
CN108763454A (zh) * 2018-05-28 2018-11-06 郑州云海信息技术有限公司 分布式文件系统日志更新方法、系统、装置及存储介质
CN108804295A (zh) * 2017-04-28 2018-11-13 北京京东尚科信息技术有限公司 日志信息记录方法和装置
CN109165235A (zh) * 2018-07-13 2019-01-08 深圳市科陆电子科技股份有限公司 电池堆的充放电数据的处理方法、系统及存储介质
CN109240844A (zh) * 2018-08-20 2019-01-18 成都国科微电子有限公司 一种日志获取方法及系统
CN109299045A (zh) * 2018-12-17 2019-02-01 郑州云海信息技术有限公司 一种日志存储方法、装置、设备及可读存储介质
CN109408483A (zh) * 2018-09-14 2019-03-01 厦门天锐科技股份有限公司 基于squid代理服务器的数据存储方法
CN109491862A (zh) * 2018-10-24 2019-03-19 聚好看科技股份有限公司 一种基于云平台的业务请求信息收集方法及装置
CN110019063A (zh) * 2017-08-15 2019-07-16 厦门雅迅网络股份有限公司 计算节点数据容灾回放的方法、终端设备及存储介质
CN110046135A (zh) * 2019-04-15 2019-07-23 湖南快乐阳光互动娱乐传媒有限公司 一种客户端日志不易失的存储方法
CN110046132A (zh) * 2019-04-15 2019-07-23 苏州浪潮智能科技有限公司 一种元数据请求处理方法、装置、设备及可读存储介质
CN110297673A (zh) * 2019-06-20 2019-10-01 福建天泉教育科技有限公司 内存数据优化加载的方法、存储介质
CN110362547A (zh) * 2018-04-02 2019-10-22 阿里巴巴集团控股有限公司 日志文件的编码、解析、存储方法和装置
CN110597835A (zh) * 2019-09-17 2019-12-20 深圳前海微众银行股份有限公司 一种基于区块链的交易数据删除方法及装置
CN110716695A (zh) * 2019-09-12 2020-01-21 北京浪潮数据技术有限公司 一种节点日志的存储方法、系统、电子设备及存储介质
CN111061690A (zh) * 2019-11-22 2020-04-24 武汉达梦数据库有限公司 一种基于rac的数据库日志文件读取方法和装置
CN111090627A (zh) * 2019-12-12 2020-05-01 深圳前海环融联易信息科技服务有限公司 基于池化的日志存储方法、装置、计算机设备及存储介质
CN111240879A (zh) * 2020-01-10 2020-06-05 苏州浪潮智能科技有限公司 一种sas卡固件日志收集方法、系统、装置及存储介质
CN109445991B (zh) * 2018-10-30 2020-06-30 歌尔科技有限公司 一种数据存储方法、系统、智能可穿戴设备及存储介质
CN111611128A (zh) * 2020-05-11 2020-09-01 网宿科技股份有限公司 一种日志处理方法及装置
CN111859458A (zh) * 2020-07-31 2020-10-30 北京无线电测量研究所 一种数据更新记录方法、系统、介质及设备
CN111858399A (zh) * 2019-04-30 2020-10-30 贵州白山云科技股份有限公司 一种数据传输方法、装置、计算机可读存储介质和计算机设备
CN112000583A (zh) * 2020-09-17 2020-11-27 深圳市有方科技股份有限公司 一种调试信息抓取方法及其装置
CN112083881A (zh) * 2020-08-24 2020-12-15 云南财经大学 一种基于持久化内存的一体化天文数据采集与存储系统
CN112204530A (zh) * 2019-12-23 2021-01-08 商汤国际私人有限公司 数据处理方法和装置、边端设备
CN112286873A (zh) * 2020-10-30 2021-01-29 西安奥卡云数据科技有限公司 一种哈希树缓存方法及装置
CN112306675A (zh) * 2020-10-12 2021-02-02 网络通信与安全紫金山实验室 数据处理方法、相关设备以及计算机可读存储介质
CN112486777A (zh) * 2020-12-11 2021-03-12 深圳前瞻资讯股份有限公司 一种大数据服务程序日志处理方法及系统
CN112631957A (zh) * 2020-12-14 2021-04-09 深兰人工智能(深圳)有限公司 数据采集方法、装置、电子设备及存储介质
CN112822494A (zh) * 2020-12-30 2021-05-18 稿定(厦门)科技有限公司 双缓冲编码系统及其控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1932812A (zh) * 2005-09-16 2007-03-21 腾讯科技(深圳)有限公司 一种日志保存方法及装置
CN101764705A (zh) * 2009-11-24 2010-06-30 北京雷霆万钧网络科技有限责任公司 一种基于日志信息处理的写磁盘方法和系统
CN101969386A (zh) * 2010-11-09 2011-02-09 道有道(北京)科技有限公司 一种日志采集装置和日志采集方法
US20110072207A1 (en) * 2009-09-22 2011-03-24 Samsung Electronics Co., Ltd Apparatus and method for logging optimization using non-volatile memory
CN102023929A (zh) * 2009-09-15 2011-04-20 上海摩波彼克半导体有限公司 基于乒乓缓存方式的数据缓存系统结构及其实现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1932812A (zh) * 2005-09-16 2007-03-21 腾讯科技(深圳)有限公司 一种日志保存方法及装置
CN102023929A (zh) * 2009-09-15 2011-04-20 上海摩波彼克半导体有限公司 基于乒乓缓存方式的数据缓存系统结构及其实现方法
US20110072207A1 (en) * 2009-09-22 2011-03-24 Samsung Electronics Co., Ltd Apparatus and method for logging optimization using non-volatile memory
CN101764705A (zh) * 2009-11-24 2010-06-30 北京雷霆万钧网络科技有限责任公司 一种基于日志信息处理的写磁盘方法和系统
CN101969386A (zh) * 2010-11-09 2011-02-09 道有道(北京)科技有限公司 一种日志采集装置和日志采集方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
康艳霞等: "实时视频处理系统中乒乓缓存的设计", 《弹箭与制导学报》, vol. 27, no. 4, 30 April 2007 (2007-04-30), pages 218 - 221 *
张辉等: "基于V4L2视频采集缓存机制应用与实现", 《现代电子技术》, no. 20, 23 May 2010 (2010-05-23) *

Cited By (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103678171A (zh) * 2013-12-10 2014-03-26 北京京诚瑞达电气工程技术有限公司 变频器数据曲线实时记录方法及装置
CN103885726B (zh) * 2014-03-20 2017-07-21 东蓝数码股份有限公司 一种高效的多线程日志写入方法
CN103885726A (zh) * 2014-03-20 2014-06-25 东蓝数码股份有限公司 一种高效的多线程日志写入方法
CN104486107A (zh) * 2014-12-05 2015-04-01 曙光信息产业(北京)有限公司 一种日志采集装置及方法
CN104899117A (zh) * 2015-06-17 2015-09-09 江苏师范大学 面向非易失性内存的内存数据库并行日志方法
CN104899117B (zh) * 2015-06-17 2019-04-16 江苏师范大学 面向非易失性内存的内存数据库并行日志方法
CN107038075B (zh) * 2015-07-14 2020-12-25 阿里巴巴集团控股有限公司 消息队列系统以及实现消息通信的方法
CN107038075A (zh) * 2015-07-14 2017-08-11 阿里巴巴集团控股有限公司 消息队列系统以及实现消息通信的方法
CN104967696A (zh) * 2015-07-29 2015-10-07 网神信息技术(北京)股份有限公司 日志发送方法和装置
CN105516307A (zh) * 2015-12-09 2016-04-20 浪潮电子信息产业股份有限公司 一种基于压缩的优化云存储系统日志存储的方法
CN107180051A (zh) * 2016-03-11 2017-09-19 华为技术有限公司 一种日志管理方法、服务器
CN107180051B (zh) * 2016-03-11 2021-02-12 华为技术有限公司 一种日志管理方法、服务器
CN108132757B (zh) * 2016-12-01 2021-10-19 阿里巴巴集团控股有限公司 数据的存储方法、装置及电子设备
CN108132757A (zh) * 2016-12-01 2018-06-08 阿里巴巴集团控股有限公司 数据的存储方法、装置及电子设备
CN108804295A (zh) * 2017-04-28 2018-11-13 北京京东尚科信息技术有限公司 日志信息记录方法和装置
CN107590182B (zh) * 2017-08-03 2020-06-19 华南理工大学 一种分布式日志收集方法
CN107590182A (zh) * 2017-08-03 2018-01-16 华南理工大学 一种分布式日志收集方法
CN110019063B (zh) * 2017-08-15 2022-07-05 厦门雅迅网络股份有限公司 计算节点数据容灾回放的方法、终端设备及存储介质
CN110019063A (zh) * 2017-08-15 2019-07-16 厦门雅迅网络股份有限公司 计算节点数据容灾回放的方法、终端设备及存储介质
CN107844405A (zh) * 2017-10-12 2018-03-27 华为技术有限公司 日志处理方法及装置、服务器
CN107977326A (zh) * 2017-11-13 2018-05-01 广州市雅江光电设备有限公司 Dmx数据双缓冲方法、装置
CN108182292A (zh) * 2018-01-30 2018-06-19 广东欧珀移动通信有限公司 应用于智能音箱的日志文件处理方法、装置及智能音箱
CN110362547A (zh) * 2018-04-02 2019-10-22 阿里巴巴集团控股有限公司 日志文件的编码、解析、存储方法和装置
CN110362547B (zh) * 2018-04-02 2023-10-03 杭州阿里巴巴智融数字技术有限公司 日志文件的编码、解析、存储方法和装置
CN108763454A (zh) * 2018-05-28 2018-11-06 郑州云海信息技术有限公司 分布式文件系统日志更新方法、系统、装置及存储介质
CN109165235A (zh) * 2018-07-13 2019-01-08 深圳市科陆电子科技股份有限公司 电池堆的充放电数据的处理方法、系统及存储介质
CN109240844B (zh) * 2018-08-20 2022-03-22 成都国科微电子有限公司 一种日志获取方法及系统
CN109240844A (zh) * 2018-08-20 2019-01-18 成都国科微电子有限公司 一种日志获取方法及系统
CN109408483A (zh) * 2018-09-14 2019-03-01 厦门天锐科技股份有限公司 基于squid代理服务器的数据存储方法
CN109491862A (zh) * 2018-10-24 2019-03-19 聚好看科技股份有限公司 一种基于云平台的业务请求信息收集方法及装置
CN109445991B (zh) * 2018-10-30 2020-06-30 歌尔科技有限公司 一种数据存储方法、系统、智能可穿戴设备及存储介质
CN109299045A (zh) * 2018-12-17 2019-02-01 郑州云海信息技术有限公司 一种日志存储方法、装置、设备及可读存储介质
CN109299045B (zh) * 2018-12-17 2022-02-18 郑州云海信息技术有限公司 一种日志存储方法、装置、设备及可读存储介质
CN110046132B (zh) * 2019-04-15 2022-04-22 苏州浪潮智能科技有限公司 一种元数据请求处理方法、装置、设备及可读存储介质
CN110046135B (zh) * 2019-04-15 2023-08-18 湖南快乐阳光互动娱乐传媒有限公司 一种客户端日志不易失的存储方法
CN110046132A (zh) * 2019-04-15 2019-07-23 苏州浪潮智能科技有限公司 一种元数据请求处理方法、装置、设备及可读存储介质
CN110046135A (zh) * 2019-04-15 2019-07-23 湖南快乐阳光互动娱乐传媒有限公司 一种客户端日志不易失的存储方法
CN111858399B (zh) * 2019-04-30 2023-11-24 贵州白山云科技股份有限公司 一种数据传输方法、装置、计算机可读存储介质和计算机设备
CN111858399A (zh) * 2019-04-30 2020-10-30 贵州白山云科技股份有限公司 一种数据传输方法、装置、计算机可读存储介质和计算机设备
CN110297673A (zh) * 2019-06-20 2019-10-01 福建天泉教育科技有限公司 内存数据优化加载的方法、存储介质
CN110716695A (zh) * 2019-09-12 2020-01-21 北京浪潮数据技术有限公司 一种节点日志的存储方法、系统、电子设备及存储介质
CN110597835A (zh) * 2019-09-17 2019-12-20 深圳前海微众银行股份有限公司 一种基于区块链的交易数据删除方法及装置
CN111061690B (zh) * 2019-11-22 2023-08-22 武汉达梦数据库股份有限公司 一种基于rac的数据库日志文件读取方法和装置
CN111061690A (zh) * 2019-11-22 2020-04-24 武汉达梦数据库有限公司 一种基于rac的数据库日志文件读取方法和装置
CN111090627A (zh) * 2019-12-12 2020-05-01 深圳前海环融联易信息科技服务有限公司 基于池化的日志存储方法、装置、计算机设备及存储介质
CN111090627B (zh) * 2019-12-12 2024-01-30 深圳前海环融联易信息科技服务有限公司 基于池化的日志存储方法、装置、计算机设备及存储介质
CN112204530A (zh) * 2019-12-23 2021-01-08 商汤国际私人有限公司 数据处理方法和装置、边端设备
CN111240879A (zh) * 2020-01-10 2020-06-05 苏州浪潮智能科技有限公司 一种sas卡固件日志收集方法、系统、装置及存储介质
CN111240879B (zh) * 2020-01-10 2022-11-25 苏州浪潮智能科技有限公司 一种sas卡固件日志收集方法、系统、装置及存储介质
CN111611128A (zh) * 2020-05-11 2020-09-01 网宿科技股份有限公司 一种日志处理方法及装置
CN111859458A (zh) * 2020-07-31 2020-10-30 北京无线电测量研究所 一种数据更新记录方法、系统、介质及设备
CN112083881A (zh) * 2020-08-24 2020-12-15 云南财经大学 一种基于持久化内存的一体化天文数据采集与存储系统
CN112083881B (zh) * 2020-08-24 2022-10-18 云南财经大学 一种基于持久化内存的一体化天文数据采集与存储系统
CN112000583A (zh) * 2020-09-17 2020-11-27 深圳市有方科技股份有限公司 一种调试信息抓取方法及其装置
CN112306675A (zh) * 2020-10-12 2021-02-02 网络通信与安全紫金山实验室 数据处理方法、相关设备以及计算机可读存储介质
CN112306675B (zh) * 2020-10-12 2024-06-04 网络通信与安全紫金山实验室 数据处理方法、相关设备以及计算机可读存储介质
CN112286873A (zh) * 2020-10-30 2021-01-29 西安奥卡云数据科技有限公司 一种哈希树缓存方法及装置
CN112486777A (zh) * 2020-12-11 2021-03-12 深圳前瞻资讯股份有限公司 一种大数据服务程序日志处理方法及系统
CN112631957A (zh) * 2020-12-14 2021-04-09 深兰人工智能(深圳)有限公司 数据采集方法、装置、电子设备及存储介质
CN112631957B (zh) * 2020-12-14 2024-04-05 深兰人工智能(深圳)有限公司 数据采集方法、装置、电子设备及存储介质
CN112822494A (zh) * 2020-12-30 2021-05-18 稿定(厦门)科技有限公司 双缓冲编码系统及其控制方法

Also Published As

Publication number Publication date
HK1185964A1 (zh) 2014-02-28
CN103309767B (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
CN103309767A (zh) 一种客户端日志处理方法和装置
CN104424186B (zh) 一种流计算应用中实现持久化的方法及装置
CN101937376B (zh) 一种数据管理方法及数据存储装置
CN104092717B (zh) 消息处理方法及系统、消息目的端设备
CN104731569B (zh) 一种数据处理方法及相关设备
US20200304238A1 (en) Memory Access Technology and Computer System
CN103678536A (zh) 一种实现页面返回操作的方法及装置
JPH0789337B2 (ja) 分散ファイル回復方法
WO2014059804A1 (zh) 数据同步方法及系统
CN109101662B (zh) 区块生成方法、装置、设备及存储介质
CN101944119B (zh) 一种智能电子设备的实时事件管理方法
EP4213038A1 (en) Data processing method and apparatus based on distributed storage, device, and medium
JP6987340B2 (ja) データベースのデータ変更要求処理方法及び装置
CN110750372B (zh) 基于共享内存的日志系统及日志管理方法
US20210133047A1 (en) System and method for fast rebuild of metadata tier
US20170329679A1 (en) Tail of logs in persistent main memory
CN111416825A (zh) 线程间无锁日志管理方法和系统、终端、存储介质
CN111914265B (zh) 面向高性能计算虚拟数据空间的轻量级数据安全保密方法
CN102023926B (zh) 一种数据超时老化处理方法及其装置
CN116955225A (zh) 数据缓存方法、装置、电子设备和可读介质
CN102629235A (zh) 一种提高ddr存储器读写速率的方法
CN103729269A (zh) 一种基于云架构的网络考试数据双缓存方法
CN103136160A (zh) 轨道车辆设备间传输数据间断点的缓存续传方法和系统
CN105117177B (zh) 一种基于单硬盘多分区的大数据管理方法
US20180309702A1 (en) Method and device for processing data after restart of node

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1185964

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1185964

Country of ref document: HK

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211111

Address after: Room 554, floor 5, building 3, No. 969, Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province

Patentee after: Taobao (China) Software Co., Ltd

Address before: P.O. Box 847, 4th floor, capital building, Grand Cayman, British Cayman Islands

Patentee before: Alibaba Group Holdings Limited