CN112134781A - 邮件数据处理方法、装置、计算机设备和存储介质 - Google Patents
邮件数据处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112134781A CN112134781A CN201910556015.9A CN201910556015A CN112134781A CN 112134781 A CN112134781 A CN 112134781A CN 201910556015 A CN201910556015 A CN 201910556015A CN 112134781 A CN112134781 A CN 112134781A
- Authority
- CN
- China
- Prior art keywords
- data
- file data
- uploading
- information
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000004458 analytical method Methods 0.000 claims abstract description 73
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000006243 chemical reaction Methods 0.000 claims abstract description 20
- 238000004590 computer program Methods 0.000 claims description 18
- 238000013500 data storage Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000007405 data analysis Methods 0.000 description 5
- 241001178520 Stomatepia mongo Species 0.000 description 4
- 239000000725 suspension Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 240000007006 Swietenia mahagoni Species 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000006854 communication Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/42—Mailbox-related aspects, e.g. synchronisation of mailboxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
- H04L51/066—Format adaptation, e.g. format conversion or compression
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种邮件数据处理方法、装置、计算机设备和存储介质。所述方法包括:接收多线程上传的邮件文件数据,对邮件数据进行数据转换,得到邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。采用多线程接收邮件数据,存储邮件文件数据,并对接收到的邮件文件数据采用多线程分析,采用多线程进行数据接收和数据分析能够加快邮件数据的处理效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种邮件数据处理方法、装置、计算机设备和存储介质。
背景技术
邮件是一种常用的用于进行业务等进行交流的方式。邮件中包含的邮件中的内容携带有各种各样的有效信息,因此邮件是非常有价值的数据,为了提取邮件中的有效信息,需要对邮件进行收集和分析。由于邮件文件较大,采用单个数据处理通道对邮件数据进行处理时,由于数据量级较大,导致数据处理效率低下。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种邮件数据处理方法,包括:
接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据;
存储各个邮件文件数据,记录邮件文件数据的存储信息;
复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程;
通过邮件解析线程提取邮件文件数据中的关键信息;
保存关键信息和存储信息的对应关系。
第二方面,本申请提供了一种邮件数据处理装置,包括:
数据转换模块,用于接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据;
数据存储模块,用于存储各个邮件文件数据,记录邮件文件数据的存储信息;
分配模块,用于复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程;
解析模块,用于通过邮件解析线程提取邮件文件数据中的关键信息;
对应关系存储模块,用于保存关键信息和存储信息的对应关系。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据;
存储各个邮件文件数据,记录邮件文件数据的存储信息;
复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程;
通过邮件解析线程提取邮件文件数据中的关键信息;
保存关键信息和存储信息的对应关系。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据;
存储各个邮件文件数据,记录邮件文件数据的存储信息;
复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程;
通过邮件解析线程提取邮件文件数据中的关键信息;
保存关键信息和存储信息的对应关系。
上述方法、装置、计算机设备和存储介质,所述方法包括:接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。采用多线程接收邮件文件数据,存储邮件文件数据,并对接收到的邮件文件数据采用多线程分析,采用多线程进行数据接收和数据解析能够加快邮件数据的处理效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中邮件数据处理方法的应用环境图;
图2为一个实施例中邮件数据处理方法的流程示意图;
图3为另一个实施例中邮件数据处理方法的应用环境图;
图4为一个具体实施例中邮件数据处理方法的流程示意图;
图5为一个实施例中邮件数据处理装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为一个实施例中邮件数据处理方法的应用环境图。参照图1,该邮件数据处理方法应用于邮件数据处理系统。该邮件数据处理系统包括上传设备110和服务器120。上传设备110和服务器120通过网络连接。服务器接收多线程上传的邮件文件数据,对邮件数据进行数据转换,得到邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。上传设备110具体可以是台式终端或服务器,其中终端可以为台式或移动终端,移动终端具体可以为手机、平板电脑、笔记本电脑、相机等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示,在一个实施例中,提供了一种邮件数据处理方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该邮件数据处理方法具体包括如下步骤:
步骤201,接收多个上传线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据。
具体地,上传线程是指用于上传邮件数据的数据传输线程。各个数据传输线程上传的邮件数据可以来自同一个上传设备,也可以来自不同的上传设备,即同一个上传设备可以占用多个上传线程,也可以一个上传设备占用一个上传线程。邮件数据是指沟通过程产生的邮件,对邮件进行整理后得到的文件流。服务器接收各个上传设备上传的邮件数据。邮件数据包括整个邮件,包含邮件发送地址、接收地址、邮件标题、邮件正文等邮件基本信息,当邮件数据中包含附件时,还包括附件,附件可以为图片、文档、压缩文件等等,压缩文件中的文件可以包括图片和文档等等。对邮件数据进行数据转换,是指将邮件数据转换成用于存储的内存数据。
步骤202,存储各个邮件文件数据,记录邮件文件数据的存储信息。
具体地,存储信息是指存储邮件文件数据的存储地址、存储内存等等信息,邮件文件数据在上传至服务器后,服务器将邮件文件数据存储至对应的文件存储区域,如将邮件文件数据存在服务器中的Mongo数据库、hbase数据库或hadoop数据库等等。其中,Mongo数据为分布式文档存储数据库,Mongo数据库是一个高性能、开源、无模式的文档型数据库。邮件文件数据按照预设的存储方式进行存储,得到存储地址、存储内存等等。具体选择什么样的数据库,可以根据需求自定义选择。
在一个实施例中,获取待处理队列中的当前缓存容量作为第一缓存容量,判断第一缓存容量是否大于或等于第一预设阈值,当第一缓存容量大于或等于第一预设阈值,生成用于暂停各个上传线程对应的上传设备上传邮件数据的暂停指令,根据各个设备的设备标识,发送暂停指令,以使上传设备执行暂停指令。
具体地,待处理队列是用于缓存邮件文件数据的消息队列。当前缓存容量是指待处理队列中在当前时刻所缓存的邮件文件数据占用的内存。第一预设阈值时预先配置的待处理对列中占用的内存是否过大的内存临界值。暂停指令是用于暂停各个上传线程对应的上传设备上传邮件数据的计算机指令。当当前缓存容量大于或等于第一预设阈值时,表示服务器中缓存的邮件文件数据过多,也就是服务器的负载过重,为了减轻服务器的负载,暂停邮件文件数据的上传操作。根据各个上传线程对应的上传设备的设备标识,发送暂停指令,上传设备执行暂停指令。
在一个实施例中,根据各个上传线程对应的上传设备的设备标识,发送暂停指令之后,还包括:获取待处理队列中当前缓存容量作为第二缓存容量,当第二缓存容量小于或等于第二预设阈值时,生成用于指示各个上传设备继续上传邮件数据的上传指令,根据各个设备的设备标识,发送上传指令,以使各个上传设备执行上传指令。通过实时判断服务器的负载能力,调整邮件数据处理流程,保证系统的稳定运行。
具体地,第二预设阈值时预先配置的待处理对列中占用的内存是否过小的内存临界值。在暂停了上传设备的上传操作后,实时监控服务器中的待处理队列占用内存的内存容量,当待处理队列占用内存的内存容量小于或等于第二预设阈值时,服务器的负载相对较轻,可以继续上传邮件数据,故生成用于上传邮件数据的计算指令,根据各个上传线程对应的上传设备的设备标识,发送上传指令至对应的上传设备,上传设备执行上传指令,恢复邮件文件数据的上传操作。根据服务器的实时负载能力,调整邮件数据处理流程,保证服务器的负载率,从而提高数据处理效率。
步骤203,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程。
具体地,在存储完成后,复制邮件文件数据和对应的存储信息。邮件解析线程是用于对邮件中的邮件对象进行解析的数据解析线程,各个数据解析线程可以全部分布在接收邮件的服务器,还可以是部分线程分布在接收邮件的服务器上,剩余部分线程分布在其他的服务器或终端上。
在一个实施例中,当全部数据解析线程中的部分布在接收邮件的服务器上,剩余部分线程分布在其他的服务器或终端上时,按照预先配置的各个服务器或终端中的总线程数据和对应的预设负载,确定各个终端或服务器中的预设负载。根据各个终端或服务器的预设负载自动分配对应的邮件解析任务至对应的终端或服务器。
在一个实施例中,预设分配算法包括各个邮件解析线程的预设负载,步骤203包括:根据各个邮件解析线程的分配级别和对应的负载,确定各个邮件解析线程的真实负载和目标邮件文件数据。
具体地,各个邮件解析线程的预设负载是指预先配置的各个邮件解析线程的最大网络负载。分配级别是指分配解析任务时的优先分配原则,不同的邮件解析线程的分配级别不同。按照各个邮件解析线程的分配级别,由高到低的顺序进行分配,即在分配邮件解析任务时,优先分配向分配级别最高的邮件解析线程分配解析任务,在分配了优先级别最高的邮件解析线程后,在向优先级别最高的下一个优先级别的邮件解析线程分配对应的邮件解析任务,依次进行,直至邮件文件数据分配完、或是各个邮件解析线程均分配了对应的邮件文件数据。真实负载是指各个解析线程执行邮件解析任务时的真实的网络负载,真实负载小于或等于最大负载。目标邮件文件数据是指各个邮件解析线程分配的邮件解析任务对应的邮件文件数据。
在一个实施例中,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,包括:获取预设分配算法对应的运行在不同的计算机设备中邮件解析线程,根据各个计算机设备的设备标识和邮件解析线程的预设负载,分配各个邮件文件数据和存储信息至邮件解析线程。
具体地,计算机设备是指能够执行邮件解析任务的设备。设备标识用于唯一标识计算机设备。当邮件解析线程运行在不同的计算机设备上时,根据各个计算机设备上的解析线程,发送对应的邮件文件数据和存储信息值对应的计算机设备,通过计算机设备上的邮件解析线程对对应的邮件文件数据进行解析。
步骤204,通过邮件解析线程提取邮件文件数据中的关键信息。
具体地,关键信息是用于描述邮件文件数据中的信息,如可以包括手机号码、姓名等特定词汇,特定字符等等重要信息。信息提取是指本文特征提取或图像特征提取等等。邮件文件数据可以仅包括邮件基本信息,也可以还包括附件。邮件基本信息包括邮件地址、邮件标题、邮件正文内容、邮件签名等等。
当邮件文件数据中仅包含邮件基本信息时,提取邮件基本信息中的关键信息。邮件基本信息中的关键信息用于检索邮件基本信息中包含的信息。
当邮件文件数据中还包含附近时,提取邮件附件中的关键信息,附件中的关键信息用于检索附件中包含的信息。
步骤205,保存关键信息和存储信息的对应关系。
具体地,保存的对应关系可以用于对邮件文件数据进行数据检索。通过检索关键信息,对邮件文件数据进行检索。
在一个实施例,根据关键信息生成索引标签,保存索引标签与存储信息的对应关系。
具体地,根据关键信息生成所以标签是指对关键信息进行整合,生成相同类型信息的索引标签,保存缩印标签与存储信息的关系。通过检索索引标签实现对邮件文件数据的检索。
在一个实施例中,提取邮件对象中的邮件基本信息的关键信息,根据邮件基本信息的关键信息生成第一索引标签,当邮件对象中仅包含邮件基本信息时,将第一索引标签作为索引标签,当邮件对象中还包含附件时,提取附件中的关键信息,根据附件的关键信息生成第二索引标签,将第一索引标签和第二索引标签合并的标签作为索引标签。
具体地,第一索引标签是用于检索邮件基本信息的索引标签,第二索引标签是用于检索附件的索引标签。通过分别提取得到的关键信息生成对应的索引标签,由邮件文件数据对应的邮件基本信息和附件提取的关键信息,生成的第一索引标签和第二索引标签,共同组成邮件文件数据的索引标签。
在一个实施例中,当邮件文件数据包含压缩文件时,先对压缩文件进行解压操作,得到对应的解压文件。
在一个实施例中,当邮件文件数据包含文档和图像时,分别提取文档中的关键信息和图像特征,生成文档索引标签和图像索引标签。其中文档的关键信息提取采用常见的文本特征提取算法,图像特征提取方法也可以采用常见的图像特征提取算法。
上述邮件数据处理方法,包括:接收多线程上传的邮件数据,对邮件数据进行数据转换,得到邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。采用多线程接收邮件数据,存储邮件文件数据,并对接收到的邮件文件数据采用多线程分析,采用多线程进行数据接收和数据解析能够加快邮件数据的处理效率。
在一个具体的实施例中,参照图3,上述邮件数据处理方法,包括,多个上传设备310(上传设备311、上传设备312)、主服务器320和多个解析设备330(解析设备331、解析设备332),其中解析设备330和上传设备310可以为相同的终端,也可以为不同的终端。在本实施例中以上传设备和解析设备为不同的终端进行说明。
上传设备在将邮件数据上传至主服务之前,先启动一个数据解析程序,启动数据解析程序后,向主服务发送注册信息,数据解析程序注册成功后就能收到主服务分发下来的数据解析任务。
上传设备的数据解析程序注册完成后,启动多个文件上传线程,通过服务接口,把邮件数据上传至主服务器。上传设备开启一个数据处理状态更新线程,定时调用服务接口,更新服务数据处理状态。
主服务器在接收到上传的邮件数据后,对邮件文件数据进行数据转成,得到邮件文件数据,把邮件文件数据存储至对应的文件存储数据库,并记录文件在数据库中的存储信息,然后复制一份邮件文件数据的文件流,把文件在数据库的存储信息和文件流插入到待处理队列。
主服务器配置了内存上限阈值(第一预设阈值)和下限阈值(第二预设阈值),当主服务器中的待处理队列达到上限阈值时,发送消息,通过消息指示上传设备暂停文件上传,等待处理内存队列被消费达到下限值时,再通知上传设备继续上传文件。
服务端消费待处理数据的队列,是一个分发调度算法,根据注册的解析程序权重值分配数据给各个数据处理程序。
数据处理程序工作过程:
开始处理数据前,记录邮件处理初始状态,处理初始状态为未解析。
读取主服务分配的邮件文件数据,转成邮件对象,包括,邮件对象包括邮件基本信息和附件,其中邮件基本信息包括邮件主题、收发件人、附件数据流等信息,当存储完成后,更新邮件基本信息的处理状态,即将处理状态从未解析更改为解析完成。
多线程处理附件数据流转化成本地文件,调用文件解析程序,读取文件信息,并上传附件文件到mongo数据库,更新附件的处理状态,将附件的处理状态,即将处理状态从未解析更改为解析完成。
合并附件信息到原始的邮件对象中,得到完整的邮件对象,并保存到mogno数据库,更新邮件对象的处理状态,即将处理状态从未解析更改为解析完成。
导入数据完成,清理本地附件文件。
在一个具体的实施例中,参照图4,图4为邮件数据处理的流程图。邮件数据处理方法,包括:
步骤401,上传设备在本地选取待上传的邮件数据。
步骤402,通过上传设备对应的伤处线程上传各个待上传的邮件数据。
步骤403,服务器中的邮件数据通过转换程序转换邮件数据。服务器中的邮件数据转换程序,将邮件数据转成邮件文件数据。邮件文件数据包括附件数据流和邮件基本信息,存储邮件文件数据,得到邮件文件数据的存储信息,复制邮件文件数据,其中邮件文件数据中的附件数据流和邮件基本信息分开进行处理,其中附件信息的处理进入步骤4031,邮件基本信息的处理进入步骤404。
步骤4031,通过附件数据转成将附件数据流转换成附件文件。
步骤4032,文件读取解析程序读取附件文件。对附件信息进行处理分类为两个流程,一个进入步骤4033,另一个步骤进入4034。
步骤S4033,提取附件中的信息,得到附件基本信息,进入步骤405。
步骤4034,文件分类。判断附件文件为图像还是文本,当为图像时进入步骤4035。
步骤4035,通知图片分析程序处理图片,进入步骤4039。
步骤40351,创建图片分类标签。图片分类标签是用于标识图片的类型,将创建的图像分类标签入库,进入步骤4039。
步骤40352,创建图片特征相似索引。
步骤40353,图像索引入库。图像索引入库是指进行图像索引存入对应的数据库中。
步骤4036,通知文件读取程度读取文件内容。文件读取程度用于读取附件文件中的文件内容。
步骤4037,文本内容提取关键字信息。关键字信息提取采用常见的文本信息提取算法。
步骤4038,创建关键字标签。根据提取的关键字信息生成关键字标签。
步骤4039,标签入库。将标签信息存入对应的数据库,其中标签信包括关键字标签和图片分类标签。
步骤404,邮件基本信息。邮件基本信息包括邮件标题、邮件正文、邮件
步骤405,邮件完整信息入库。邮件完成信息包括邮件基本信息和有附件。存储邮件基本信息和附件,得到对应的存储信息。
步骤406,创建全文检索索引。全文检索索引包括邮件基本信息的检索信息和附件的检索信息。
步骤407,全文检索入库。
步骤408,更新处理状态。处理状态包括未完成入库,完成入库,当邮件完整信息入库后,将为完成入库修改为完成入库。
图2为一个实施例中邮件数据处理方法的流程示意图。应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种邮件数据处理装置500,包括:
数据转换模块501,用于接收多个上传线程上传的邮件数据,对所述邮件数据进行数据转换,得到邮件文件数据。
数据存储模块502,用于存储各个邮件文件数据,记录邮件文件数据的存储信息。
分配模块503,用于复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程。
解析模块504,用于通过邮件解析线程提取邮件文件数据中的关键信息。
对应关系存储模块505,用于保存关键信息和存储信息的对应关系。
在一个实施例中,分配模块具体用于根据各个邮件解析线程的分配级别和对应的负载,确定各个邮件解析线程的真实负载和目标邮件文件数据。
在一个实施例中,分配模块还用于获取预设分配算法对应的运行在不同的计算机设备中邮件解析线程,根据各个计算机设备的设备标识和邮件解析线程的预设负载,分配各个邮件文件数据和存储信息至邮件解析线程。
在一个实施例中,上述邮件数据处理装置,还包括:
缓存容量获取模块,用于获取待处理队列中的当前缓存容量作为第一缓存容量,待处理队列是用于缓存邮件文件数据的消息队列。
第一判断模块,用于判断第一缓存容量是否大于或等于第一预设阈值。
暂停模块,用于当第一缓存容量大于或等于第一预设阈值,生成用于暂停各个上传线程对应的上传设备上传邮件数据的暂停指令,根据各个上传设备的设备标识,发送暂停指令,以使上传设备执行暂停指令。
在一个实施例中,上述邮件数据处理装置,还包括:
缓存容量获取模块还用于在根据各个上传线程对应的上传设备的设备标识,发送暂停指令之后,获取待处理队列中的当前缓存容量,作为第二缓存容量。
邮件上传恢复模块,用于生成用于指示各个上传设备继续上传邮件数据的上传指令,根据各个上传设备的设备标识,发送上传指令,以使各个上传设备执行上传指令。
在一个实施例中,上述邮件数据处理装置,还包括:
所以标签生成模块,用于根据关键信息生成索引标签,对应关系存储模块具体用于保存索引标签与存储信息的对应关系。
在一个实施例中,对应关系存储模块具体用于提取邮件对象中的邮件基本信息的关键信息,根据邮件基本信息的关键信息生成第一索引标签;当邮件对象中仅包含邮件基本信息时,将第一索引标签作为索引标签;当邮件对象中还包含附件时,提取附件中的关键信息,根据附件的关键信息生成第二索引标签,将第一索引标签和第二索引标签合并的标签作为索引标签。
图6示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的上传设备110(或服务器120)。如图6所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现邮件数据处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行邮件数据处理方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的邮件数据处理装置可以实现为一种计算机程序的形式,计算机程序可在如图6所示的计算机设备上运行。计算机设备的存储器中可存储组成该邮件数据处理装置的各个程序模块,比如,图5所示的数据转换模块501、数据存储模块502、分配模块503、解析模块504和对应关系存储模块505。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的邮件数据处理方法中的步骤。
例如,图6所示的计算机设备可以通过如图3所示的邮件数据处理装置中的数据转换模块501执行接收多个上传线程上传的邮件数据,对所述邮件数据进行数据转换,得到邮件文件数据。计算机设备可以通过数据存储模块502执行存储各个邮件文件数据,记录邮件文件数据的存储信息。计算机设备可以通过分配模块503执行复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程。计算机设备可以通过解析模块504执行通过邮件解析线程提取邮件文件数据中的关键信息。计算机设备可以通过对应关系存储模块505执行保存关键信息和存储信息的对应关系。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:接收多线程上传的邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。
在一个实施例中,预设分配算法包括各个邮件解析线程的预设负载,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,包括:根据各个邮件解析线程的分配级别和对应的负载,确定各个邮件解析线程的真实负载和目标邮件文件数据。
在一个实施例中,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,包括:获取预设分配算法对应的运行在不同的计算机设备中邮件解析线程,根据各个计算机设备的设备标识和邮件解析线程的预设负载,分配各个邮件文件数据和存储信息至邮件解析线程。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取待处理队列中的当前缓存容量作为第一缓存容量,待处理队列是用于缓存邮件文件数据的消息队列;判断第一缓存容量是否大于或等于第一预设阈值;当第一缓存容量大于或等于第一预设阈值,生成用于暂停各个上传线程对应的上传设备上传邮件数据的暂停指令;根据各个上传设备的设备标识,发送暂停指令,以使上传设备执行暂停指令。
在一个实施例中,根据各个上传线程对应的上传设备的设备标识,发送暂停指令之后,处理器执行计算机程序时还实现以下步骤:获取待处理队列中当前缓存容量作为第二缓存容量;当第二缓存容量小于或等于第二预设阈值时,生成用于指示各个上传设备继续上传邮件数据的上传指令;根据各个上传设备的设备标识,发送上传指令,以使各个上传设备执行上传指令。
在一个实施例中,保存关键信息和存储信息的对应关系,包括:提取邮件对象中的关键信息,根据关键信息生成索引标签;保存索引标签与存储信息的对应关系。
在一个实施例中,提取邮件对象中的关键信息,根据关键信息生成索引标签,包括:提取邮件对象中的邮件基本信息的关键信息,根据邮件基本信息的关键信息生成第一索引标签;当邮件对象中仅包含邮件基本信息时,将第一索引标签作为索引标签;当邮件对象中还包含附件时,提取附件中的关键信息,根据附件的关键信息生成第二索引标签,将第一索引标签和第二索引标签合并的标签作为索引标签。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收多线程上传的邮件文件数据,存储各个邮件文件数据,记录邮件文件数据的存储信息,复制邮件文件数据,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,通过邮件解析线程提取邮件文件数据中的关键信息,保存关键信息和存储信息的对应关系。
在一个实施例中,预设分配算法包括各个邮件解析线程的预设负载,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,包括:根据各个邮件解析线程的分配级别和对应的负载,确定各个邮件解析线程的真实负载和目标邮件文件数据。
在一个实施例中,根据预设分配算法,分配各个邮件文件数据和存储信息至邮件解析线程,包括:获取预设分配算法对应的运行在不同的计算机设备中邮件解析线程,根据各个计算机设备的设备标识和邮件解析线程的预设负载,分配各个邮件文件数据和存储信息至邮件解析线程。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:获取待处理队列中的当前缓存容量作为第一缓存容量,待处理队列是用于缓存邮件文件数据的消息队列;判断第一缓存容量是否大于或等于第一预设阈值;当第一缓存容量大于或等于第一预设阈值,生成用于暂停各个上传线程对应的上传设备上传邮件数据的暂停指令;根据各个上传设备的设备标识,发送暂停指令,以使上传设备执行暂停指令。
在一个实施例中,根据各个上传线程对应的上传设备的设备标识,发送暂停指令之后,计算机程序被处理器执行时还实现以下步骤:获取待处理队列中当前缓存容量作为第二缓存容量;当第二缓存容量小于或等于第二预设阈值时,生成用于指示各个上传设备继续上传邮件数据的上传指令;根据各个上传设备的设备标识,发送上传指令,以使各个上传设备执行上传指令。
在一个实施例中,保存关键信息和存储信息的对应关系,包括:提取邮件对象中的关键信息,根据关键信息生成索引标签;保存索引标签与存储信息的对应关系。
在一个实施例中,提取邮件对象中的关键信息,根据关键信息生成索引标签,包括:提取邮件对象中的邮件基本信息的关键信息,根据邮件基本信息的关键信息生成第一索引标签;当邮件对象中仅包含邮件基本信息时,将第一索引标签作为索引标签;当邮件对象中还包含附件时,提取附件中的关键信息,根据附件的关键信息生成第二索引标签,将第一索引标签和第二索引标签合并的标签作为索引标签。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种邮件数据处理方法,其特征在于,所述方法包括:
接收多个上传线程上传的邮件数据,对所述邮件数据进行数据转换,得到邮件文件数据;
存储各个所述邮件文件数据,记录所述邮件文件数据的存储信息;
复制所述邮件文件数据,根据预设分配算法,分配各个所述邮件文件数据和所述存储信息至邮件解析线程;
通过所述邮件解析线程提取所述邮件文件数据中的关键信息;
保存所述关键信息和所述存储信息的对应关系。
2.根据权利要求1所述的方法,其特征在于,所述预设分配算法包括各个邮件解析线程的预设负载,所述根据预设分配算法,分配各个所述邮件文件数据和所述存储信息至邮件解析线程,包括:
根据各个所述邮件解析线程的分配级别和对应的负载,确定各个所述邮件解析线程的真实负载和目标邮件文件数据。
3.根据权利要求1所述的方法,其特征在于,所述根据预设分配算法,分配各个所述邮件文件数据和所述存储信息至邮件解析线程,包括:
获取所述预设分配算法对应的运行在不同的计算机设备中邮件解析线程;
根据各个所述计算机设备的设备标识和所述邮件解析线程的预设负载,分配各个所述邮件文件数据和所述存储信息至所述邮件解析线程。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待处理队列中的当前缓存容量作为第一缓存容量,所述待处理队列是用于缓存所述邮件文件数据的消息队列;
判断所述第一缓存容量是否大于或等于第一预设阈值;
当所述第一缓存容量大于或等于所述第一预设阈值,生成用于暂停各个所述上传线程对应的上传设备上传所述邮件文件数据的暂停指令;
根据各个所述上传设备的设备标识,发送所述暂停指令,以使所述上传设备执行所述暂停指令。
5.根据权利要求4所述的方法,其特征在于,所述根据各个所述各个上传线程对应的上传设备的设备标识,发送所述暂停指令之后,还包括:
获取所述待处理队列中当前缓存容量作为第二缓存容量;
当所述第二缓存容量小于或等于第二预设阈值时,生成用于指示各个所述上传设备继续上传所述邮件文件数据的上传指令;
根据各个所述设备的设备标识,发送所述上传指令,以使个所述设备执行所述上传指令。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述关键信息生成索引标签;
所述保存所述关键信息和所述存储信息的对应关系,包括:
保存所述索引标签与所述存储信息的对应关系。
7.根据权利要求6所述的方法,其特征在于,所述提取所述邮件对象中的关键信息,根据所述关键信息生成索引标签,包括:
提取所述邮件对象中的邮件基本信息的关键信息,根据所述邮件基本信息的关键信息生成第一索引标签;
当所述邮件对象中仅包含所述邮件基本信息时,将所述第一索引标签作为所述索引标签;
当所述邮件对象中还包含附件时,提取所述附件中的关键信息,根据所述附件的关键信息生成第二索引标签,将所述第一索引标签和所述第二索引标签合并的标签作为所述索引标签。
8.一种邮件数据处理装置,其特征在于,所述装置包括:
数据转换模块,用于接收多个上传线程上传的邮件数据,对所述邮件数据进行数据转换,得到邮件文件数据;
数据存储模块,用于存储各个所述邮件文件数据,记录所述邮件文件数据的存储信息;
分配模块,用于复制所述邮件文件数据,根据预设分配算法,分配各个所述邮件文件数据和所述存储信息至邮件解析线程;
解析模块,用于通过所述邮件解析线程提取所述邮件文件数据中的关键信息;
对应关系存储模块,用于保存所述关键信息和所述存储信息的对应关系。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910556015.9A CN112134781A (zh) | 2019-06-25 | 2019-06-25 | 邮件数据处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910556015.9A CN112134781A (zh) | 2019-06-25 | 2019-06-25 | 邮件数据处理方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112134781A true CN112134781A (zh) | 2020-12-25 |
Family
ID=73849433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910556015.9A Pending CN112134781A (zh) | 2019-06-25 | 2019-06-25 | 邮件数据处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112134781A (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5500890A (en) * | 1993-08-19 | 1996-03-19 | Exxon Research And Engineering Company | Point-of-sale system using multi-threaded transactions and interleaved file transfer |
US20130124548A1 (en) * | 2011-08-30 | 2013-05-16 | Google Inc. | System and Method for Presenting A Plurality of Email Threads for Review |
CN103595615A (zh) * | 2012-08-15 | 2014-02-19 | 腾讯科技(深圳)有限公司 | 电子邮件的发送和接收方法、终端 |
CN103634407A (zh) * | 2013-12-11 | 2014-03-12 | 北京荣之联科技股份有限公司 | 一种云存储文件断点续传的方法和装置 |
CN105577712A (zh) * | 2014-10-10 | 2016-05-11 | 腾讯科技(深圳)有限公司 | 一种文件上传方法、装置和系统 |
CN105610899A (zh) * | 2015-12-10 | 2016-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种文本文件并行上传方法及装置 |
CN107682459A (zh) * | 2017-11-20 | 2018-02-09 | 深圳市沃特沃德股份有限公司 | 数据分包上传服务器的方法及装置 |
CN109359099A (zh) * | 2018-08-21 | 2019-02-19 | 中国平安人寿保险股份有限公司 | 分布式文件上传方法、装置、计算机设备及存储介质 |
CN109756581A (zh) * | 2019-03-06 | 2019-05-14 | 珠海金山网络游戏科技有限公司 | 一种文件传输系统及方法、一种计算设备及存储介质 |
-
2019
- 2019-06-25 CN CN201910556015.9A patent/CN112134781A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5500890A (en) * | 1993-08-19 | 1996-03-19 | Exxon Research And Engineering Company | Point-of-sale system using multi-threaded transactions and interleaved file transfer |
US20130124548A1 (en) * | 2011-08-30 | 2013-05-16 | Google Inc. | System and Method for Presenting A Plurality of Email Threads for Review |
CN103595615A (zh) * | 2012-08-15 | 2014-02-19 | 腾讯科技(深圳)有限公司 | 电子邮件的发送和接收方法、终端 |
CN103634407A (zh) * | 2013-12-11 | 2014-03-12 | 北京荣之联科技股份有限公司 | 一种云存储文件断点续传的方法和装置 |
CN105577712A (zh) * | 2014-10-10 | 2016-05-11 | 腾讯科技(深圳)有限公司 | 一种文件上传方法、装置和系统 |
CN105610899A (zh) * | 2015-12-10 | 2016-05-25 | 浪潮(北京)电子信息产业有限公司 | 一种文本文件并行上传方法及装置 |
CN107682459A (zh) * | 2017-11-20 | 2018-02-09 | 深圳市沃特沃德股份有限公司 | 数据分包上传服务器的方法及装置 |
CN109359099A (zh) * | 2018-08-21 | 2019-02-19 | 中国平安人寿保险股份有限公司 | 分布式文件上传方法、装置、计算机设备及存储介质 |
CN109756581A (zh) * | 2019-03-06 | 2019-05-14 | 珠海金山网络游戏科技有限公司 | 一种文件传输系统及方法、一种计算设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
A.S.ZENZIN等: ""Development of distributed file system for storing weather data"", 《RESEARCHGATE》 * |
张岩: ""基于邮件传输协议的远程存储系统"", 《科技资讯》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10275355B2 (en) | Method and apparatus for cleaning files in a mobile terminal and associated mobile terminal | |
CN107590188B (zh) | 一种自动化垂直细分领域的爬虫爬取方法及其管理系统 | |
CN109271420B (zh) | 信息推送方法、装置、计算机设备和存储介质 | |
CN101923557B (zh) | 数据分析系统及方法 | |
CN106777179B (zh) | 一种文档在线预览方法及系统 | |
WO2019061991A1 (zh) | 多元通用模型平台建模方法、电子设备及计算机可读存储介质 | |
CN108288208B (zh) | 基于图像内容的展示对象确定方法、装置、介质及设备 | |
EP2985707A1 (en) | Method and apparatus for finding file in storage device and router and medium | |
CN108809718B (zh) | 基于虚拟资源的网络访问方法、系统、计算机设备和介质 | |
CN110866491A (zh) | 目标检索方法、装置、计算机可读存储介质和计算机设备 | |
CN109472540B (zh) | 业务处理方法和装置 | |
CN111198856A (zh) | 文件管理方法、装置、计算机设备和存储介质 | |
CN109492856B (zh) | 业务请求处理方法、装置、计算机设备以及存储介质 | |
CN111190727A (zh) | 内存的异步析构方法、装置、计算机设备及存储介质 | |
CN112347394A (zh) | 网页信息的获取方法、装置、计算机设备和存储介质 | |
CN112541121A (zh) | 页面数据推送方法、装置、计算机设备及存储介质 | |
CN107357794A (zh) | 优化键值数据库的数据存储结构的方法和装置 | |
CN106815223B (zh) | 一种海量图片管理方法和装置 | |
CN111125485A (zh) | 基于Scrapy的网站URL爬取方法 | |
CN111159443B (zh) | 一种图像特征值的搜索方法、装置及电子设备 | |
US8918406B2 (en) | Intelligent analysis queue construction | |
CN112134781A (zh) | 邮件数据处理方法、装置、计算机设备和存储介质 | |
CN111444412A (zh) | 网络爬虫任务的调度方法及装置 | |
CN104166665A (zh) | 信息处理装置及其控制方法 | |
CN115543202A (zh) | 缓存管理方法、读取方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 510000 no.2-8, North Street, Nancun Town, Panyu District, Guangzhou City, Guangdong Province Applicant after: Guangzhou huiruisitong Technology Co.,Ltd. Address before: 510000 no.2-8, North Street, Nancun Town, Panyu District, Guangzhou City, Guangdong Province Applicant before: GUANGZHOU HUIRUI SITONG INFORMATION TECHNOLOGY Co.,Ltd. |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201225 |