CN109672605B - 邮件分发方法、装置、设备及可读存储介质 - Google Patents
邮件分发方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN109672605B CN109672605B CN201811128965.3A CN201811128965A CN109672605B CN 109672605 B CN109672605 B CN 109672605B CN 201811128965 A CN201811128965 A CN 201811128965A CN 109672605 B CN109672605 B CN 109672605B
- Authority
- CN
- China
- Prior art keywords
- distribution
- message data
- data
- determining
- 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.)
- Active
Links
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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
Abstract
本发明提供一种邮件分发方法,包括:当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。本发明还提供一种邮件分发装置、设备及可读存储介质。本发明能够有效的避免邮件拥堵和提高数据的可阅览性。
Description
技术领域
本发明涉及数据传输的技术领域,尤其涉及一种邮件分发方法、装置、设备及可读存储介质。
背景技术
随着微服务架构的快速发展,越来越多的企业采用微服务架构开发各个业务系统,基于微服务架构开发的业务系统,存在需要将业务监控异常数据或统计数据等系统数据告诉给对应的人员,目前,常用的解决方式主要是将业务系统接入邮件系统,由邮件系统通过邮件的方式将业务监控异常数据或统计数据等系统数据发送到对应的人员邮箱。
然而,不同业务系统的业务监控异常数据或统计数据等系统数据,需要发邮件给不同的人员,需要管理人员配置邮件收件人和邮件抄送人,如果多个业务系统均有邮件通知需求,则需要将各个业务系统接入邮件系统,接入的业务系统增多,则需要分发的邮件也相应的增多,而当需要分发的邮件较多时,容易出现邮件拥堵,此外,以邮件的方式发送异常数据或统计数据时,由于数据的展现格式不同,在传输过程中数据的展现格式容易出现问题,需要接收人员手动调整数据的展示格式才能较好的阅览数据。
因此,如何避免邮件拥堵和提高数据的可阅览性是目前亟待解决的问题。
发明内容
本发明的主要目的在于提供一种邮件分发方法、装置、设备及可读存储介质,旨在如何避免邮件拥堵和提高数据的可阅览性。
为实现上述目的,本发明提供一种邮件分发方法,包括:
当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
可选地,所述依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数的步骤包括:
从读取到的邮件消息数据中获取系统识别码和业务主题关键字;
查询配置的系统识别码以及业务主题关键字与邮件配置参数之间的映射关系表,获取与系统识别码以及业务主题关键字对应的邮件配置参数。
可选地,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件的步骤包括:
新建一空白邮件,并从所述邮件配置参数中读取收件邮箱、抄送邮箱和密送邮箱,且从所述邮件消息数据读取邮件主题、邮件内容信息和邮件内容展现格式;
将所述收件邮箱、所述抄送邮箱、所述密送邮箱、所述邮件主题和所述邮件内容信息填充至所述空白邮件的对应位置区域,以获取已填充邮件;
按照所述邮件内容展现格式对所述已填充邮件中的邮件内容信息进行格式调整,并在完成格式调整之后,得到组装的目标邮件。
可选地,所述邮件分发方法还包括:
当监测到邮件配置参数的配置指令时,显示参数配置界面,并接收基于所述参数配置界面配置的邮件配置参数、系统识别码和邮件主题关键字;
将所述邮件配置参数与所述系统识别码以及所述邮件主题关键字进行关联存储。
可选地,所述邮件分发方法还包括:
统计所述消息队列中的邮件消息数据的个数,并依据所述邮件消息数据的个数,确定邮件分发方式是单邮件分发,还是多邮件分发;
若邮件分发方式是单邮件分发,则每次执行一个邮件消息数据的邮件分发操作;
若邮件分发方式是多邮件分发,则依据所述邮件消息数据的个数,确定同步分发邮件数,并每次执行对应个数的邮件消息数据的邮件分发操作
可选地,依据所述邮件消息数据的个数,确定邮件分发方式是单邮件分发,还是多邮件分发的步骤包括:
确定所述邮件消息数据的个数是否超过预设阈值;
若所述邮件消息数据的个数超过预设阈值,则确定邮件分发方式是多邮件分发,否则确定邮件分发方式是单邮件分发。
可选地,依据所述邮件消息数据的个数,确定同步分发邮件数的步骤包括:
确定所述邮件消息数据的个数所处的数据个数区间,并获取当前可用CPU资源,且依据所述当前可用CPU资源确定第一同步分发邮件数;
查询预存的数据个数区间与第二同步分发邮件数的映射关系表,获取与所述数据个数区间对应的第二同步分发邮件数;
确定所述第二同步分发邮件数是否低于所述第一同步分发邮件数;
若所述第二同步分发邮件数低于所述第一同步分发邮件数,则将所述第二同步分发邮件数确定为同步分发邮件数,否则将所述第二同步分发邮件数确定为同步分发邮件数。
此外,为实现上述目的,本发明还提供一种邮件分发装置,所述邮件分发装置包括:
数据写入模块,用于当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
参数查询模块,用于从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
邮件组装模块,用于当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
此外,为实现上述目的,本发明还提供一种邮件分发设备,所述邮件分发设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的邮件分发程序,其中所述邮件分发程序被所述处理器执行时,实现如上述的邮件分发方法的步骤。
此外,为实现上述目的,本发明还提供一种可读存储介质,所述可读存储介质上存储有邮件分发程序,其中所述邮件分发程序被处理器执行时,实现如上述的邮件分发方法的步骤。
本发明提供一种邮件分发方法、装置、设备及可读存储介质,本发明当监测到邮件消息数据时,将该邮件消息数据写入至分布式发布订阅消息系统的预设消息队列中,然后从该消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数,最后当查询到对应的邮件配置参数时,依据邮件配置参数和邮件消息数据,组装目标邮件,并发送完成组装的目标邮件,通过消息队列对邮件消息数据进行管理,可以有序的执行邮件消息数据的邮件分发操作,避免由于需要分发的邮件较多时产生邮件拥堵,同时通过邮件消息数据中的系统识别码和业务主题关键字可快速查询到对应的邮件配置参数,且邮件经过组装之后,邮件包含的数据不容易出现问题,接收方不需要调整数据的展现格式即可较好的阅览数据,有效的避免邮件拥堵和提高数据的可阅览性。
附图说明
图1为本发明各实施例涉及的邮件分发设备的硬件结构示意图;
图2为本发明邮件分发方法第一实施例的流程示意图;
图3为本发明邮件分发方法第二实施例的流程示意图;
图4为本发明邮件分发装置第一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例涉及的邮件分发方法主要应用于邮件分发设备,该邮件分发设备可以是PC(个人计算机personal computer)、便携计算机、移动终端等具有显示和处理功能的设备。
参照图1,图1为本发明实施例方案中涉及的邮件分发设备的硬件结构示意图。本发明实施例中,邮件分发设备可以包括处理器1001(例如中央处理器Central ProcessingUnit、CPU),通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard);网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口);存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块以及邮件分发程序。在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的邮件分发程序,并执行本发明实施例提供的邮件分发方法。
本发明实施例提供了一种邮件分发方法。
参照图2,图2为本发明邮件分发方法第一实施例的流程示意图。
本实施例中,该邮件分发方法由邮件分发设备实现,该邮件分发设备可以是PC、掌上电脑和平板电脑等终端设备,可选为图1所示的设备,所述邮件分发方法包括以下步骤:
步骤S101,当监测到邮件消息数据时,将邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
步骤S102,从消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
步骤S103,当查询到对应的邮件配置参数时,依据邮件配置参数和邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
不同业务系统的业务监控异常数据或统计数据等系统数据,需要发邮件给不同的人员,需要管理人员配置邮件收件和邮件抄送,如果多个业务系统均有邮件通知需求,则需要将各个业务系统接入与邮件系统,接入的业务系统增多,则需要分发的邮件也相应的增多,而当需要分发的邮件的较多时,容易出现邮件拥堵,此外,以邮件的方式发送异常数据或统计数据时,由于数据的展现格式不同,在传输过程中数据的展现格式容易出现问题,需要接收人员手动调整数据的展示格式才能较好的阅览数据。考虑到上述问题,本实施例中提出一种邮件分发方法,以下详细介绍邮件分发方法的具体步骤:
步骤S101,当监测到邮件消息数据时,将邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
本实施例中,业务系统与分布式发布订阅消息系统对接,且分布式发布订阅消息系统和业务系统均与邮件分发设备连接,邮件分发设备调用分布式发布订阅消息系统监测业务系统是否存在异常数据或定时统计数据等邮件消息数据,当监测到邮件消息数据时,按照设定的数据结构体将该邮件消息数据写入至分布式发布订阅消息系统的消息队列中,即从设定的数据结构体中读取各数据结构对象字段,并从邮件消息数据中获取各数据结构对象字段对应的具体参数数据,然后将各数据结构对象字段对应的具体参数数据填充至设定的数据结构体中,并将填充后的数据结构体写入至分布式发布订阅消息系统的消息队列中。其中,该数据结构对象字段包括但不限于系统识别码字段、业务主题关键字字段、邮件主题字段、邮件内容信息字段、数据生成时间字段、默认收件字段、默认抄送字段和邮件内容展现格式字段;该邮件消息数据包括但不限于系统识别码、业务主题关键字、邮件主题、邮件内容信息、数据生成时间、默认收件、默认抄送和邮件内容展现格式,该系统识别码用于唯一表示邮件消息数据所属的业务系统,该业务主题关键字用于唯一表示邮件消息数据所属的业务主题;该预设消息队列用于缓存邮件消息数据,且在缓存的邮件消息数据被读取之后,删除消息队列中的对应邮件消息数据。
步骤S102,从消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
本实施例中,设备监测分布式发布订阅消息系统的消息队列中是否存在邮件消息数据,如果分布式发布订阅消息系统的消息队列中存在邮件消息数据,则从消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数,如果消息队列中不存在邮件消息数据,则继续执行消息队列的监测操作。其中,该邮件配置参数包括但不限于收件邮箱、抄送邮箱、密送邮箱和邮件发送方式,该邮件发送方式包括定时刻发送和实时发送。
具体地,从读取到的邮件消息数据中获取系统识别码和业务主题关键字,并查询配置的系统识别码以及业务主题关键字与邮件配置参数之间的映射关系表,获取与系统识别码以及业务主题关键字对应的邮件配置参数。需要说明的是,系统识别码以及业务主题关键字与邮件配置参数之间的映射关系表存储在数据库或缓存区域中,可由本领域技术人员基于实际情况进行设置,本实施例对此不作具体限定。
具体实施中,当监测到消息队列中存在邮件消息数据时,确定该消息队列中是否存在多个邮件消息数据,若该消息队列中只存在一个邮件消息数据,则直接从消息队列中读取该邮件消息数据;若该消息队列中存在多个邮件消息数据,则获取当前可用CPU资源,并确定当前可用CPU资源是否低于预设CPU资源,若当前可用CPU资源低于预设CPU资源,则按照先入先出的方式从消息队列中读取邮件消息数据;若当前可用资源超过预设CPU资源,则依据当前可用资源确定同步执行数量,并按照先入先出的方式从消息队列中读取该同步执行数量的邮件消息数据。其中,依据当前可用资源确定同步执行数量的具体方式为查询预存的可用资源与同步执行数量之间的映射关系表,获取与当前可用资源对应的同步执行数量,其中,预设CPU资源可根据CPU总资源来设置,或者由用户根据具体需要而设置。如在映射关系表中,当可用CPU资源小于A时,对应可同时执行的同步执行数量为2;当可用CPU资源大于或者等于A,小于B时,对应可同时执行的同步执行数量为3;当可用CPU资源大于或者等于B,小于C时,对应可同时执行的同步执行数量为4,其中,A<B<C。
进一步地,当监测到邮件配置参数的配置指令时,显示参数配置界面,并接收基于该参数配置界面配置的邮件配置参数、系统识别码和邮件主题关键字,然后将邮件配置参数与所述系统识别码以及邮件主题关键字进行关联存储。
步骤S103,当查询到对应的邮件配置参数时,依据邮件配置参数和邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
本实施例中,当查询到对应的邮件配置参数时,设备依据邮件配置参数和邮件消息数据,组装目标邮件,即新建空白邮件,并将该邮件配置参数和该邮件消息数据填充至该空白邮件,以组装目标邮件;在组装目标邮件之后,发送完成组装的目标邮件。具体实施中,在发送目标邮件之前,还可以对目标邮件进行加密和/或压缩,提高目标邮件的传输安全性。
具体地,设备新建一空白邮件,并从该邮件配置参数中读取收件邮箱、抄送邮箱和密送邮箱,且从该邮件消息数据读取邮件主题、邮件内容信息和邮件内容展现格式,然后将该收件邮箱、该抄送邮箱、该密送邮箱、该邮件主题和该邮件内容信息填充至该空白邮件的对应位置区域,以获取已填充邮件,最后按照邮件内容展现格式对已填充邮件中的邮件内容信息进行格式调整,并在完成格式调整之后,得到组装的目标邮件。
其中,新建的空白邮件包括但不限于收件邮箱区域、抄送邮箱区域、密送邮箱区域、邮件主题区域和邮件内容区域,通过标识字段与区域的映射关系,将收件邮箱填充至空白邮件的收件邮箱区域,将抄送邮箱填充至空白邮件的抄送邮箱区域,将密送邮箱填充至空白邮件的密送邮箱区域,将邮件主题填充至空白邮件的邮件主题区域,将邮件内容信息填充至空白邮件的邮件内容区域。
具体实施中,在组装完成目标邮件之后,确定该目标邮件的邮件发送方式是实时发送还是定时刻发送,若该目标邮件的邮件发送方式是实时发送,则压缩目标邮件,并发送压缩后的目标邮件,若该目标邮件的邮件发送方式是是定时刻发送,则在到达定点时刻时,压缩目标邮件,并发送压缩后的目标邮件。
本实施例中,本发明当监测到邮件消息数据时,将该邮件消息数据写入至分布式发布订阅消息系统的消息队列中,然后从消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数,最后当查询到对应的邮件配置参数时,依据邮件配置参数和邮件消息数据,组装目标邮件,并发送完成组装的目标邮件,通过消息队列对邮件消息数据进行管理,可以有序的执行邮件消息数据的邮件分发操作,避免由于需要分发的邮件较多时产生邮件拥堵,同时通过邮件消息数据中的系统识别码和业务主题关键字可快速查询到对应的邮件配置参数,且邮件经过组装之后,邮件包含的数据不容易出现问题,接收方不需要调整数据的展现格式即可较好的阅览数据,有效的避免邮件拥堵和提高数据的可阅览性。
进一步地,参照图3,基于上述第一实施例,提出了本发明邮件分发方法的第二实施例,与前述实施例的区别在于,该邮件分发方法还包括:
步骤S104,统计消息队列中的邮件消息数据的个数,并依据邮件消息数据的个数,确定邮件分发方式是单邮件分发,还是多邮件分发;
本实施例中,设备统计消息队列中的邮件消息数据的个数,并依据邮件消息数据的个数,确定邮件分发方式是单邮件分发,还是多邮件分发。具体地,确定邮件消息数据的个数是否超过预设阈值,如果邮件消息数据的个数超过预设阈值,则确定邮件分发方式是多邮件分发,反之,如果邮件消息数据的个数未超过预设阈值,则确定邮件分发方式是单邮件分发。需要说明的是,上述预设阈值可由本领域技术人员基于实际情况进行设置,本实施例对此不作具体限定。
步骤S105,若邮件分发方式是单邮件分发,则每次执行一个邮件消息数据的邮件分发操作;
本实施例中,如果邮件分发方式是单邮件分发,则每次执行一个邮件消息数据的邮件分发操作,即按照邮件消息数据的先入先出顺序,从预设消息队列中依次读取一邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数,然后依据邮件配置参数和邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
步骤S106,若邮件分发方式是多邮件分发,则依据邮件消息数据的个数,确定同步分发邮件数,并每次执行对应个数的邮件消息数据的邮件分发操作。
本实施例中,如果邮件分发方式是多邮件分发,则依据邮件消息数据的个数,确定同步分发邮件数,并每次执行对应个数的邮件消息数据的邮件分发操作,即从预设消息队列中读取对应数量的邮件消息数据,并依据读取到的各邮件消息数据中的系统识别码和业务主题关键字查询各邮件消息数据对应的邮件配置参数,然后依据各邮件消息数据及其对应的邮件配置参数,组装各邮件消息数据对应的各目标邮件,然后压缩各目标邮件,并发送压缩后的各目标邮件。
具体地,确定邮件消息数据的个数所处的数据个数区间,并获取当前可用CPU资源,且依据当前可用CPU资源确定第一同步分发邮件数,即查询预存的可用CPU资源与第一同步分发邮件数的映射关系表,获取与当前可用CPU资源对应的第一同步分发邮件数,然后查询预存的数据个数区间与第二同步分发邮件数的映射关系表,获取与该数据个数区间对应的第二同步分发邮件数,并确定第二同步分发邮件数是否低于第一同步分发邮件数,如果第二同步分发邮件数低于第一同步分发邮件数,则将第二同步分发邮件数确定为同步分发邮件数,否则将第二同步分发邮件数确定为同步分发邮件数。
本实施例中,本发明通过邮件消息数据的个数选择不同的邮件分发方式,在邮件消息数据的数量较少时,采用单邮件分发,在邮件消息数据的数量较多时,采用多邮件分发,可有效的提高邮件分发速度,进一步地避免邮件拥堵。
此外,本发明实施例还提供一种邮件分发装置。
参照图4,图4为本发明邮件分发装置第一实施例的功能模块示意图。
本发明邮件分发装置为虚拟装置,存储于图1所示邮件分发设备的存储器1005中,用于实现邮件分发程序的所有功能;当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
具体的,本实施例中,所述邮件分发装置包括:
数据写入模块101,用于当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
参数查询模块102,用于从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
邮件组装模块103,用于当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,组装目标邮件,并发送完成组装的目标邮件。
进一步地,所述参数查询模块102还用于:
从读取到的邮件消息数据中获取系统识别码和业务主题关键字;
查询配置的系统识别码以及业务主题关键字与邮件配置参数之间的映射关系表,获取与系统识别码以及业务主题关键字对应的邮件配置参数。
进一步地,所述邮件组装模块103还用于:
新建一空白邮件,并从所述邮件配置参数中读取收件邮箱、抄送邮箱和密送邮箱,且从所述邮件消息数据读取邮件主题、邮件内容信息和邮件内容展现格式;
将所述收件邮箱、所述抄送邮箱、所述密送邮箱、所述邮件主题和所述邮件内容信息填充至所述空白邮件的对应位置区域,以获取已填充邮件;
按照所述邮件内容展现格式对所述已填充邮件中的邮件内容信息进行格式调整,并在完成格式调整之后,得到组装的目标邮件。
进一步地,所述邮件分发装置还包括:
参数配置模块,用于当监测到邮件配置参数的配置指令时,显示参数配置界面,并接收基于所述参数配置界面配置的邮件配置参数、系统识别码和邮件主题关键字;以及还用于将所述邮件配置参数与所述系统识别码以及所述邮件主题关键字进行关联存储。
进一步地,所述邮件分发装置还包括:
统计确定模块,用于统计所述消息队列中的邮件消息数据的个数,并依据所述邮件消息数据的个数,确定邮件分发方式是单邮件分发,还是多邮件分发;
执行模块,用于若邮件分发方式是单邮件分发,则每次执行一个邮件消息数据的邮件分发操作;
所述执行模块,还用于若邮件分发方式是多邮件分发,则依据所述邮件消息数据的个数,确定同步分发邮件数,并每次执行对应个数的邮件消息数据的邮件分发操作。
进一步地,所述统计确定模块还用于:
确定所述邮件消息数据的个数是否超过预设阈值;
若所述邮件消息数据的个数超过预设阈值,则确定邮件分发方式是多邮件分发,否则确定邮件分发方式是单邮件分发。
进一步地,所述统计确定模块还用于:
确定所述邮件消息数据的个数所处的数据个数区间,并获取当前可用CPU资源,且依据所述当前可用CPU资源确定第一同步分发邮件数;
查询预存的数据个数区间与第二同步分发邮件数的映射关系表,获取与所述数据个数区间对应的第二同步分发邮件数;
确定所述第二同步分发邮件数是否低于所述第一同步分发邮件数;
若所述第二同步分发邮件数低于所述第一同步分发邮件数,则将所述第二同步分发邮件数确定为同步分发邮件数,否则将所述第二同步分发邮件数确定为同步分发邮件数。
其中,上述邮件分发装置中各个模块的功能实现与上述邮件分发方法实施例中各步骤相对应,其功能和实现过程在此处不再一一赘述。
此外,本发明实施例还提供一种可读存储介质。
本发明可读存储介质上存储有邮件分发程序,其中所述邮件分发程序被处理器执行时,实现如上述的邮件分发方法的步骤。
其中,邮件分发程序被执行时所实现的方法可参照本发明邮件分发方法的各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种邮件分发方法,其特征在于,包括:
当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
以先入先出的方式从所述消息队列中读取邮件消息数据的系统识别码和业务主题关键字,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,通过邮件配置参数的标识字段和区域的映射关系组装目标邮件;
确定所述邮件消息数据的个数,并确定所述邮件消息数据的个数是否超过预设阈值;
若所述邮件消息数据的个数超过预设阈值,则确定邮件分发方式是多邮件分发,否则确定邮件分发方式是单邮件分发;
将所述目标邮件进行压缩,并以确定的邮件分发方式发送压缩后的所述目标邮件。
2.如权利要求1所述的邮件分发方法,其特征在于,所述依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数的步骤包括:
从读取到的邮件消息数据中获取系统识别码和业务主题关键字;
查询配置的系统识别码以及业务主题关键字与邮件配置参数之间的映射关系表,获取与系统识别码以及业务主题关键字对应的邮件配置参数。
3.如权利要求1所述的邮件分发方法,其特征在于,所述依据所述邮件配置参数和所述邮件消息数据,组装目标邮件的步骤包括:
新建一空白邮件,并从所述邮件配置参数中读取收件邮箱、抄送邮箱和密送邮箱,且从所述邮件消息数据读取邮件主题、邮件内容信息和邮件内容展现格式;
将所述收件邮箱、所述抄送邮箱、所述密送邮箱、所述邮件主题和所述邮件内容信息填充至所述空白邮件的对应位置区域,以获取已填充邮件;
按照所述邮件内容展现格式对所述已填充邮件中的邮件内容信息进行格式调整,并在完成格式调整之后,得到组装的目标邮件。
4.如权利要求1-3中任一项所述的邮件分发方法,其特征在于,所述邮件分发方法还包括:
当监测到邮件配置参数的配置指令时,显示参数配置界面,并接收基于所述参数配置界面配置的邮件配置参数、系统识别码和邮件主题关键字;
将所述邮件配置参数与所述系统识别码以及所述邮件主题关键字进行关联存储。
5.如权利要求1-3中任一项所述的邮件分发方法,其特征在于,所述邮件分发方法还包括:
若邮件分发方式是单邮件分发,则每次执行一个邮件消息数据的邮件分发操作;
若邮件分发方式是多邮件分发,则依据所述邮件消息数据的个数,确定同步分发邮件数,并每次执行对应个数的邮件消息数据的邮件分发操作。
6.如权利要求5所述的邮件分发方法,其特征在于,依据所述邮件消息数据的个数,确定同步分发邮件数的步骤包括:
确定所述邮件消息数据的个数所处的数据个数区间,并获取当前可用CPU资源,且依据所述当前可用CPU资源确定第一同步分发邮件数;
查询预存的数据个数区间与第二同步分发邮件数的映射关系表,获取与所述数据个数区间对应的第二同步分发邮件数;
确定所述第二同步分发邮件数是否低于所述第一同步分发邮件数;
若所述第二同步分发邮件数低于所述第一同步分发邮件数,则将所述第二同步分发邮件数确定为同步分发邮件数,否则将所述第二同步分发邮件数确定为同步分发邮件数。
7.一种邮件分发装置,其特征在于,所述邮件分发装置包括:
数据写入模块,用于当监测到邮件消息数据时,将所述邮件消息数据写入至分布式发布订阅消息系统的消息队列中;
参数查询模块,用于以先入先出的方式从所述消息队列中读取邮件消息数据,并依据读取到的邮件消息数据中的系统识别码和业务主题关键字查询邮件配置参数;
邮件组装模块,用于当查询到对应的邮件配置参数时,依据所述邮件配置参数和所述邮件消息数据,通过邮件配置参数的标识字段和区域的映射关系组装目标邮件;
统计确定模块,用于确定所述邮件消息数据的个数,并确定所述邮件消息数据的个数是否超过预设阈值;
所述统计确定模块,还用于若所述邮件消息数据的个数超过预设阈值,则确定邮件分发方式是多邮件分发,否则确定邮件分发方式是单邮件分发;
所述邮件组装模块,还用于将所述目标邮件进行压缩,并以确定的邮件分发方式发送压缩后的所述目标邮件。
8.一种邮件分发设备,其特征在于,所述邮件分发设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的邮件分发程序,其中所述邮件分发程序被所述处理器执行时,实现如权利要求1至6中任一项所述的邮件分发方法的步骤。
9.一种可读存储介质,其特征在于,所述可读存储介质上存储有邮件分发程序,其中所述邮件分发程序被处理器执行时,实现如权利要求1至6中任一项所述的邮件分发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811128965.3A CN109672605B (zh) | 2018-09-26 | 2018-09-26 | 邮件分发方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811128965.3A CN109672605B (zh) | 2018-09-26 | 2018-09-26 | 邮件分发方法、装置、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109672605A CN109672605A (zh) | 2019-04-23 |
CN109672605B true CN109672605B (zh) | 2022-04-15 |
Family
ID=66142636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811128965.3A Active CN109672605B (zh) | 2018-09-26 | 2018-09-26 | 邮件分发方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109672605B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112035277A (zh) * | 2020-08-14 | 2020-12-04 | 深圳市亿源通供应链管理有限公司 | 基于跨境电商平台的邮件处理方法、装置、设备及介质 |
CN113946362B (zh) * | 2021-09-02 | 2022-08-16 | 贝壳找房(北京)科技有限公司 | 消费数据处理方法及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002032307A (ja) * | 2000-07-18 | 2002-01-31 | Casio Comput Co Ltd | メール配信装置、及び記憶媒体 |
CN103188125B (zh) * | 2011-12-27 | 2017-06-23 | 腾讯科技(北京)有限公司 | 邮件系统以及邮件生成和发送的方法 |
CN103491170B (zh) * | 2013-09-24 | 2017-03-29 | 新浪网技术(中国)有限公司 | 电子邮件到达消息提醒的方法及系统 |
CN104601454B (zh) * | 2015-02-13 | 2018-04-10 | 北京京东尚科信息技术有限公司 | 处理邮件的方法和系统 |
CN106161217A (zh) * | 2016-09-05 | 2016-11-23 | 广州视源电子科技股份有限公司 | 邮件转发方法及系统 |
CN107332787A (zh) * | 2017-06-29 | 2017-11-07 | 北京奇艺世纪科技有限公司 | 一种消息分发方法和装置 |
-
2018
- 2018-09-26 CN CN201811128965.3A patent/CN109672605B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109672605A (zh) | 2019-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259553B (zh) | 业务邮件的发送方法及终端设备 | |
US6292825B1 (en) | Service application with pull notification | |
US8065318B2 (en) | Systems and methods for managing application configuration | |
US8719825B2 (en) | Prompting for execution or delay of scheduled job | |
US8001150B2 (en) | Device management method using nodes having additional attribute and device management client thereof | |
JP2004530198A (ja) | 警報報知と条件付き実行を備えたビジネスアプリケーションのためのコンピュータシステム | |
CN103733568A (zh) | 使用客户端-服务器架构的流处理 | |
CN100471178C (zh) | 电子邮件组播设备 | |
KR101207132B1 (ko) | 차별화된 콘텐츠 표현 방법, 그를 위한 콘텐츠 전송시스템, 콘텐츠 제공 서버 및 단말기 | |
CN109669835B (zh) | MySQL数据库监控方法、装置、设备及可读存储介质 | |
CN109672605B (zh) | 邮件分发方法、装置、设备及可读存储介质 | |
CN109978114B (zh) | 数据处理方法、装置、服务器及存储介质 | |
CN111064656A (zh) | 数据管理方法、装置、系统、存储介质及电子设备 | |
WO2019237592A1 (zh) | 数据监控方法、装置、计算机设备及存储介质 | |
CN114301859A (zh) | 通知消息的发送方法、装置、电子设备及介质 | |
US10320737B2 (en) | Device and method for temporal correlation of communication types | |
CN106161188B (zh) | 消息发送方法、消息展示方法及装置 | |
CN109391537B (zh) | 一种信息处理方法、装置和计算机存储介质 | |
KR102462716B1 (ko) | Api를 이용한 이동통신메시지 재전송 시스템 및 방법 | |
CN113961329A (zh) | 基于db轻量级kafka管理及定时任务队列系统 | |
CN114239510A (zh) | 业务信息的处理方法、装置、存储介质和电子设备 | |
CN108874923B (zh) | 虚拟物品分发方法、服务器及计算机可读存储介质 | |
KR20230001840A (ko) | Rcs 및 pms 연동 멀티미디어 문자 서비스 제공 시스템 및 방법 | |
US20160044468A1 (en) | A system and method for providing data | |
CN111917633B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |