CN111526081B - 邮件转发方法、装置、设备及存储介质 - Google Patents
邮件转发方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111526081B CN111526081B CN202010182247.5A CN202010182247A CN111526081B CN 111526081 B CN111526081 B CN 111526081B CN 202010182247 A CN202010182247 A CN 202010182247A CN 111526081 B CN111526081 B CN 111526081B
- Authority
- CN
- China
- Prior art keywords
- resources
- resource
- forwarded
- level
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/107—Computer-aided management of electronic mailing [e-mailing]
-
- 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/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- 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/21—Monitoring or handling of messages
- H04L51/226—Delivery according to priorities
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Computer Hardware Design (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及大数据处理技术领域,公开了一种邮件转发方法,获取当前邮件平台中的第一待转发邮件,并根据预置的发送优先级对第一待转发邮件进行分类后,在按照对应的优先等级存储到消费队列中,然后根据判断当前待发送的消费队列中的等级资源与待发送的第二待转发邮件的数量之间的关系,从而选择调度其他等级的资源来补充当前等级的资源,从而实现邮件的转发操作;本发明还提供了一种邮件转发装置、设备及存储介质,基于优先等级选择对应的邮件进行发送,并且在邮件资源不支持发送时,选择冗余等级的消费队列中的邮件资源进行重新配置,以缓解当前发送等级的消费队列的资源压力,从而提高邮件的转发效率。
Description
技术领域
本发明涉及大数据处理技术领域,尤其涉及一种邮件转发方法、装置、设备及计算机可读存储介质。
背景技术
在当前的业务处理流程中,通过邮件方式来管控业务是比较普遍的方式之一,而对于邮件的发送或者自动转发,其主要是通过在邮箱上设置发送规则,而该发送规则是转发或者发送的邮箱地址的优先级,或者是邮件发送的先后时间顺序,基于优先级或者时间的先后来进行邮件的发送或者转发。
但是通过现有的邮件发送方式,在发送的邮件数量较少的情况下,可以实现快速地处理,而在邮件数据较多,甚至可能超过了邮箱服务器的资源承受能力时,其优先级的规则可以减少单次邮件发送的数量,但是并不能对邮箱服务器本来的资源配置进行变更,可见对于邮件的处理效率并不能得到很好的解决,从而导致大量的邮件堆积或者转发延时的问题,致使部分客户未能及时接收相关邮件,造成损失。
发明内容
本发明的主要目的在于提供一种邮件转发方法、装置、设备及计算机可读存储介质,旨在解决基于现有邮件发送机制,在邮件数量过大时难以实现高效率处理的技术问题。
为解决上述的问题,在本发明的第一方面中提供了一种邮件转发方法,应用于邮件平台,所述邮件发送方法包括:根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中,所述第二待转发邮件为所述第一待转发邮件的子集;若不匹配,则调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;基于合并后的可调用邮件资源发送所述第二待转发邮件。
可选的,若所述预置的发送优先级为基于发件人设置的转发优先级时,所述根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类包括:对所述第一待转发邮件进行发件人的提取;基于所述发件人查找所述发件人的转发优先级,确定所述发件人的邮件转发优先级别;根据所述邮件转发优先级别,将所述第一待转发邮件从高到低进行排序,并分类存储。
可选的,本发明第一方面的一个可行实施方式中,每个等级的消费队列中包括发送队列和接收队列,所述统计所述第一等级的第二待转发邮件的数量,并计算所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配包括:检测所述第一等级中对应的发送队列中是否存在所述第二待转发邮件;若存在,则统计所述发送队列完成对所述第二待转发邮件发送时所需的目标资源,其中所述目标资源等于所述第二待转发邮件的数量乘以所述发送队列发送邮件时的平均消耗资源;将所述目标资源与所述第一等级当前的可调用资源进行比较;若所述目标资源大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配;若所述目标资源不大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量匹配。
可选的,本发明第一方面的一个可行实施方式中,在所述确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配之后,还包括:计算所述目标资源与所述可调用资源的资源份额差;查询除了所述第一等级对应的发送队列之外的其他等级的发送队列中的第一邮件资源,确定所述第一邮件资源大于所述资源份额差的发送队列,并进行资源的调取。
可选的,本发明第一方面的一个可行实施方式中,所述调取其他等级的消费队列中的邮件资源,并设置所述第一邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中包括:判断所述第一等级是否为所述转发优先级中的最低级别;若是,则从所述邮件平台中截取大小为所述资源份额差的接收资源,并将所述接收资源的类型从接收类型修改为发送类型,合并至所述可调用邮件资源中,其中,所述接收资源用于实现所述邮件平台的邮件接收;若否,则优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源,直至调取第一邮件资源总和达到所述资源份额差时,将所述第一邮件资源总和合并至所述可调用邮件资源中。
可选的,本发明第一方面的一个可行实施方式中,在所述第一等级不是所述转发优先级中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的第一邮件资源总和仍达不到所述资源份额差时,所述调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,还包括:从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
可选的,本发明第一方面的一个可行实施方式中,所述优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源包括:获取所述优先级别比所述第一等级低一级的次高消费队列的预置邮件资源;将所述预置邮件资源与所述资源份额差进行比较;若所述预置邮件资源大于所述资源份额差,则从所述预置邮件资源中调取与所述资源份额差等量的邮件资源份额到所述第一等级对应的消费队列中;若所述预置邮件资源小于所述资源份额差,则继续调取所述次高消费队列的次高消费队列的预置邮件资源,并计算预置邮件资源总和,直至调取所述邮件资源总和不小于所述资源份额差为止。
此外,为解决上述的问题,在本发明的第二方面中提供了一种邮件转发装置,所述邮件转发装置包括:接收模块,用于根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;分类模块,用于根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;排序模块,用于将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;获取模块,用于获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;第一计算模块,用于统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中,所述第二待转发邮件为所述第一待转发邮件的子集;资源调用模块,用于在所述可调用邮件资源与所述第二待转发邮件的数量不匹配时,调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;转发模块,用于基于合并后的可调用邮件资源发送所述第二待转发邮件。
可选的,本发明第一方面的一个可行实施方式中,所述分类模块具体包括提取单元、确定单元和存储单元;在所述预置的发送优先级为基于发件人设置的转发优先级时,所述提取单元,用于对所述第一待转发邮件进行发件人的提取;所述确定单元,用于基于所述发件人查找所述发件人的转发优先级,确定所述发件人的邮件转发优先级别;所述存储单元,用于根据所述邮件转发优先级别,将所述第一待转发邮件从高到低进行排序,并分类存储。
可选的,本发明第一方面的一个可行实施方式中,所述第一计算模块具体包括检测单元、统计单元、比较单元和匹配单元;所述检测单元,用于检测所述第一等级中对应的发送队列中是否存在所述第二待转发邮件;所述统计单元,用于在所述检测单元检测存在第二待转发邮件时,统计所述发送队列完成对所述第二待转发邮件发送时所需的目标资源,其中所述目标资源等于所述第二待转发邮件的数量乘以所述发送队列发送邮件时的平均消耗资源;所述比较单元,用于将所述目标资源与所述第一等级当前的可调用资源进行比较;所述匹配单元,用于在所述目标资源大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配,以及在所述目标资源不大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量匹配。
可选的,本发明第一方面的一个可行实施方式中,所述邮件转发装置还包括第二计算模块和查询模块;在所述第一计算模块确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配时,所述第二计算模块,用于计算所述目标资源与所述可调用资源的资源份额差;所述查询模块,用于查询除了所述第一等级对应的发送队列之外的其他等级的发送队列中的第一邮件资源,确定所述第一邮件资源大于所述资源份额差的发送队列,并进行资源的调取。
可选的,本发明第一方面的一个可行实施方式中,所述资源调用模块包括判断单元和资源修改单元;所述判断单元,用于判断所述第一等级是否为所述转发优先级中的最低级别;所述资源修改单元,用于在判断所述第一等级是最低级别时,从所述邮件平台中截取大小为所述资源份额差的接收资源,并将所述接收资源的类型从接收类型修改为发送类型,合并至所述可调用邮件资源中,其中,所述接收资源用于实现所述邮件平台的邮件接收,以及在判断所述第一等级不是最低级别时,优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源,直至调取第一邮件资源总和达到所述资源份额差时,将所述第一邮件资源总和合并至所述可调用邮件资源中。
可选的,本发明第一方面的一个可行实施方式中,所述资源调用模块还包括选择单元,用于在所述第一等级不是所述转发优先级中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的第一邮件资源总和仍达不到所述资源份额差时,从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;所述资源修改单元还用于:从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
可选的,本发明第一方面的一个可行实施方式中,所述资源修改单元还用于:获取所述优先级别比所述第一等级低一级的次高消费队列的预置邮件资源;将所述预置邮件资源与所述资源份额差进行比较;若所述预置邮件资源大于所述资源份额差,则从所述预置邮件资源中调取与所述资源份额差等量的邮件资源份额到所述第一等级对应的消费队列中;若所述预置邮件资源小于所述资源份额差,则继续调取所述次高消费队列的次高消费队列的预置邮件资源,并计算预置邮件资源总和,直至调取所述邮件资源总和不小于所述资源份额差为止。
此外,为解决上述的问题,在本发明的第三方面中提供了一种邮件转发设备,所述邮件转发设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机可读程序,所述计算机可读程序被所述处理器执行时实现如上任一项所述的邮件转发方法。
此外,为解决上述的问题,在本发明的第四方面中提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读程序,所述计算机可读程序被一个或多个处理器执行时实现如上任一项所述的邮件转发方法。
本发明通过提供一种邮件转发方法、装置、设备及存储介质,通过获取当前邮件平台中的第一待转发邮件,并根据预置的发送优先级对第一待转发邮件进行分类后,在按照对应的优先等级存储到消费队列中,然后根据判断当前待发送的消费队列中的等级资源与待发送的第二待转发邮件的数量之间的关系,从而选择调度其他等级的资源来补充当前等级的资源,从而实现邮件的转发操作,基于优先等级选择对应的邮件进行发送,并且在邮件资源不支持发送时,选择冗余等级的消费队列中的邮件资源进行重新配置,以缓解当前发送等级的消费队列的资源压力,从而提高邮件的转发效率。
附图说明
图1为本发明提供的邮件转发方法第一实施例的流程示意图;
图2为本发明提供的邮件转发方法第二实施例的流程示意图;
图3为本发明提供的消费队列优先级的排序示意图;
图4为本发明提供的邮件转发装置一实施例的功能模块示意图;
图5为本发明提供的邮件转发装置的另一实施的功能模块示意图;
图6为本发明提供的服务器的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
本发明实施例提供了一种邮件转发方法,通过对邮件发送机制的设计,以及根据邮件重要性,实效性,对邮件设置发送优先级别,在优先级别的资源不支持全部邮件发送时,进行资源的重新配置,已达到对当前等级的邮件发送,以保证邮件的发送处理,避免邮件发送积压,从而实现邮件发送任务的自动调度,使客户能及时收到重要邮件,提升客户满意度。
图1为本发明实施例提供的邮件转发方法的流程图,该方法可以用于邮件控制平台的服务器上,也可以用于具有自动转发邮件功能的APP上,该邮件转发方法具体包括以下步骤:
101,根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;
102,根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
103,将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中;
在该步骤中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成。
在本实施例中,将接收到的邮件发送请求加入邮件消费队列,可以在发送时依次从邮件消费队列中取出待发送的邮件发送请求,避免并发的发送行为。例如,可以将接收到的邮件发送请求加入 Redis 邮件消费队列。
其中,该邮件发送请求可以为来自外部服务器的发送邮件的发送请求,例如,用户注册某一应用账号时,该应用的服务器向请求注册的用户的邮箱发送验证邮件的邮件发送请求。所述邮件发送请求中可以包含 :邮件标题、接收邮箱账号、邮件正文、附件以及邮件编码格式等。
进一步的,在将接收到的邮件发送请求加入邮件消费队列后,还可以对加入队列的邮件进行排队,例如,可以根据邮件发送请求加入邮件消费队列的顺序和 / 或邮件发送请求中的指定发送时间对加入邮件消费队列的邮件发送请求进行排队。
在实际应用中,主要是针对于邮件平台中出现邮件积压时,如何实现快速的转发邮件,调整邮件的发送方式,特别是在特定的消费日或者营销日的情况下,当检测到邮件平台的邮件过多或者存在积压过多现象时,由于发送机制无法对平台资源做出调整,导致邮件平台经常出现邮件积压的情况,而邮件积压可能会导致消费队列堵塞,不能保证邮件发送成功。由于有些邮件的信息对于接收人来说非常重要,如果这些邮件不能得到及时、可靠的发送进而处理,将会对接收人带来巨大损失,从而降低接收人的服务体验。
在本实施例中,监测当前邮件平台的邮件量是否超出负荷阈值,若当前邮件平台的邮件量超出负荷阈值,则确定当前邮件平台存在积压的邮件,对积压的邮件进行发送优先级识别,根据发送优先级,将邮件存储到发送优先级对应的消费队列中。
例如,预设邮件的发送优先级从高到低为1到3,分别对应1到3的消费队列。首先识别当前邮件平台积压邮件中发送优先级为1的邮件,并将发送优先级为1的邮件存储到发送优先级为1的消费队列中。
104,获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
在该步骤中,这里的第一等级指的是消息队列中处于第一优先级的队列所对应的邮件等级,在实际应用中,通过指示信息来确定,该指示信息可以理解为是消息队列中每个队列的排序序号,也可以是二进制中的“0”和“1”的置位,而“1”表示为是当前需要进行发送的邮件数据。
在本实施例中,在该步骤之后,还包括获取用于管理发送该邮件数据的邮件平台配置的邮件资源,所述邮件资源指的是用于实现邮件数据管理的网络资源或者基站资源,其包括上行邮件资源和下行邮件资源,其中,其还分为可调用和不可调用两部分邮件资源,该可调用邮件资源具体为网络资源和/或上行基站资源;进一步的,计算在可调用邮件资源中分配给每个消息队列的资源比例以及具体邮件资源。
在实际应用中,在计算的过程中,其具体可以分为两部分进行计算,第一部分是网络资源的分配比例,第二部分是基站资源的备用量。
105,统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,所述第二待转发邮件为所述第一待转发邮件的子集;
在本实施例中,对当前邮件平台的高优先级对应的消费队列进行检测,确定高优先级对应的消费队列是否存在待发送邮件,若所述高优先级对应消费队列中存在待发送邮件,确定系统资源分配到所述高优先级对应消费队列的资源份额,进而判断所述资源份额是否满足发送所述待发送邮件所需的资源份额。其中,邮件平台的每个消费队列根据发送优先级的不同及预置资源份额分配机制,每个消费队列的预置资源份额均不相同。需要注意的是,消费队列越多,所能分到的资源份额越少。
例如,当前预设发送优先级从高到低为1到3,分别对应1到3的消费队列,预设系统资源有G,预设系统资源分配到发送优先级中从高到低的配比为5:3:2,即发送优先级为1的消费队列的预置资源份额为0.5G,发送优先级为2的消费队列的预置资源份额为0.3G,发送优先级为3的消费队列的预置资源份额为0.2G,若当前发送优先级1的消费队列中存在待发送邮件,经过统计发送完所述待发送邮件的所需资源为0.6G,则根据发送优先级1的消费队列预置资源为0.5G可知,发送优先级1的消费队列中预置资源不足以消费队列中的待发送邮件。
在实际应用中,当所述可调用邮件资源包括网络资源和上行基站资源时,在计算所述第一等级的可调用邮件资源是否与所述第二待转发邮件资源的数量匹配的过程中,具体的,首先根据第二带转发邮件中的每封邮件发送时所需要占用的网络资源的大小,然后根据计算出所有第二待转发邮件所需要的网络资源的总和,基于该总和与配置的网络资源进行比较,判断其是否可以实现发送。
在本实施例中,对于邮件的网络资源具体包括发送和接收的两部分,而该步骤的比较具体是将该总和与发送的网络资源进行比较,若不满足条件,则计算差值,从接收的网络资源中调用一部分来使用,当然,在实际应用中,还需要确定该接收的网络资源是否被其他程序进行占用。
106,若不匹配,则调取其他等级的消费队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中;
107,基于合并后的可调用邮件资源发送所述第二待转发邮件。
本实施例中,这里的其他等级可以理解为是消费队列中除去第一等级之外的等级,也可以理解为是第一等级所在的消费队列之外的其他消费队列的等级。
在实际应用中,本申请中设置为每个等级对应定义一个完整的消费队列,而消费队列包括发送队列和接收队列,发送队列用于邮件发送,对应配置有发送资源;接收队列用于接收邮件,对应配置有接收资源;这里在调取邮件资源时可以根据实际情况选择调用其他等级上的发送队列的邮件资源,或者是选择调用当前等级的接收队列的资源和/或其他等级上的接收队列的资源;当然在本实施例中,优先选择调用发送队列的资源,只有发送队列不满足调用条件时,再从接收队列中调取。
基于上述步骤,若高优先级对应消费队列的预置资源份额不足以发送所述待发送邮件,即发送所述待发送邮件需要的资源份额大于高优先级对应消费队列的预置资源份额,则通过资源分配系统,计算发送待发送邮件的所需资源份额与高优先级对应消费队列的预置资源份额之间的资源份额差。
例如,统计当前消费队列的待发送邮件为10封,通过计算得到发送10封邮件当前队列需要的资源份额为10G,而当前消费队列的预置资源份额5G,则当前消费队列所有待发送邮件发送完毕还需调取系统资源份额为10G-5G。
通过对上述方法的实施,基于优先级对邮件资源自动调度来实现邮件的转发的方法,获取当前邮件平台中的第一待转发邮件,并根据预置的发送优先级对第一待转发邮件进行分类后,在按照对应的优先等级存储到消费队列中,然后根据判断当前待发送的消费队列中的等级资源与待发送的第二待转发邮件的数量之间的关系,从而选择调度其他等级的资源来补充当前等级的资源,从而实现邮件的转发操作,使客户能及时收到重要邮件,避免了邮件堆积,提升客户满意度。
图2为本发明实施例提供的邮件转发方法的第二种实现流程,该实施方式主要是从比第一等级低的优先级别中调度邮件资源来缓解邮件发送的压力,其具体实现步骤如下:
201,根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;
202,根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
该步骤主要是基于所述预置的发送优先级为基于发件人设置的转发优先级的情况下实现,具体的通过对所述第一待转发邮件进行发件人的提取;基于所述发件人查找所述发件人的转发优先级,确定所述发件人的邮件转发优先级别;根据所述邮件转发优先级别,将所述第一待转发邮件从高到低进行排序,并分类存储。
在实际应用中,若以接收人为基础设置优先级时,对于步骤202的实现可以是:
对当前邮件平台中积压的邮件进行接收人识别,得到所述邮件对应的接收人;
基于所述接收人,查找预置发送优先级表,得到所述接收人的邮件发送优先级;
根据所述邮件的发送优先级,将所述邮件存储到对应优先级的消费队列中。
本实施例中,获取当前邮件平台中积压的邮件,通过获取所述邮件的接收人信息,确定所述邮件对应的接收人。然后根据接收人信息,查询预置的发送优先级表,找到所述接收人的邮件对应的发送优先级,进而根据邮件的发送优先级,将所述邮件存储到所述发送优先级对应的消费队列中。其中,所述发送优先级表可由用户根据应用场景的接收人重要等级,制定相应的邮件发送优先级,建立发送优先级表。进一步地,不同接收人的发送优先级由用户自定义设置。
例如,当前邮件平台中积压的邮件A,获取邮件的接收人信息为张三,则确定邮件A的接收人为张三,然后查询预置发送优先级表得到张三的邮件发送优先级为1,则将张三为接收人的邮件存储在发送优先级为1的消费队列中。
203,将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中;
在本实施例中,对于消费队列的优先等级的设置可以采用图3的排序方式,图3中是以rocketMQ消息队列为例,按优先级不同划分消息队列,如发送电邮topic下的队列0~n,分别对应0~n的优先级(0最高,n最低);第一待转发邮件依次是存储在消费队列0~n中的数据,在实际转发邮件时,是通过获取待发送电邮数据id,推送电邮数据到电邮平台发送电邮;在转发之前,需要判断每个级别队列中是否有数据,若有,则跳转至当前优先级别的消费队列中进行第二待转发邮件的统计,然后再根据统计的邮件数据进行资源的调取,消费一批数据后,从最高优先级开始再次循环;若当前优先级队列中没有第二待转发邮件时,则跳转至下一优先级别的队列进行数据判断,即是没有数据则说明本级别电邮已全部发送完,进入消费下一优先级别的队列。
204,获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
205,检测所述第一等级中对应的发送队列中是否存在所述第二待转发邮件;
206,若存在,则统计所述发送队列完成对所述第二待转发邮件发送时所需的目标资源,其中所述目标资源等于所述第二待转发邮件的数量乘以所述发送队列发送邮件时的平均消耗资源;
207,将所述目标资源与所述第一等级当前的可调用资源进行比较;
在该步骤中,当比较的结果为大于,则执行步骤208,反之,则跳转至步骤212。
208,若所述目标资源大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配;
在本实施例中,确定所述目标资源份额与所述预置资源份额的资源份额差后,通过系统资源分配系统,调取预先分配到低优先级对应消费队列中的资源份额,直至调取的资源份额与高优先级对应消费队列的预置资源份额的总额,足够高优先级对应消费队列的将待发送邮件发送完毕。
例如,统计当前消费队列的待发送邮件为10封,通过计算得到发送10封邮件当前队列需要的资源份额为10G,而当前消费队列的预置资源份额5G,则当前消费队列所有待发送邮件发送完毕还需调取系统资源份额为5G,通过系统资源分配系统从分配到低优先级对应消费队列的资源份额中,逐级调取系统资源份额,若次高优先级的资源份额不满足所需的5G,则顺延调取下一优先级的资源份额,直至调取的资源份额达到所需的资源份额,以使高优先级消费队列的所有待发送邮件发送完毕。
209,计算所述目标资源与所述可调用资源的资源份额差;
在本实施例中,还包括查询所述消费队列中除了所述第一等级对应的发送队列之外的其他等级的发送队列中的第一邮件资源,并调取大于所述资源份额差的发送队列的第一邮件资源。
210,判断所述第一等级是否为所述转发优先级中的最低级别;
211,若否,则优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源,直至调取第一邮件资源总和达到所述资源份额差时,将所述第一邮件资源总和合并至所述可调用邮件资源中;
即是在根据资源份额差查询到的比第一等级低的优先级别中的可调用邮件资源大于资源份额差的等级中调取。
212,若所述目标资源不大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量匹配;
213,基于合并后的可调用邮件资源发送所述第二待转发邮件。
在本实施例中,对于步骤210中,若其判断结果为是,则可以选择从所述邮件平台中截取大小为所述资源份额差的接收资源,并将所述接收资源的类型从接收类型修改为发送类型,合并至所述可调用邮件资源中,其中,所述接收资源用于实现所述邮件平台的邮件接收。
在本实施例中,当确定最高优先级消费队列中存在待发送邮件,统计所述待发送邮件的数量,根据当前系统发送一封邮件所消耗的资源份额,调用资源分配接口对所述待发送邮件所需的资源份额进行统计,得到所述待发送邮件的资源需求份额,然后将所述资源需求份额与所述最高优先级消费队列的预置资源份额进行比较。其中,若所述资源需求份额大于所述高优先级消费队列的预置资源份额,则所述高优先级消费队列的预置资源份额不满足所述资源需求份额;若所述资源需求份额小于所述高优先级消费队列的预置资源份额,则所述高优先级对应消费队列的预置资源份额满足所述资源需求份额。
例如,当前预设发送优先级从高到低为1到3,分别对应1到3的消费队列,预设系统资源有G,预设系统资源分配到发送优先级中从高到低的配比为5:3:2,即发送优先级为1的消费队列的预置资源份额为0.5G,发送优先级为2的消费队列的预置资源份额为0.3G,发送优先级为3的消费队列的预置资源份额为0.2G,若当前发送优先级1的消费队列中存在待发送邮件,经过统计发送完所述待发送邮件的所需资源为0.6G,则根据发送优先级1的消费队列预置资源为0.5G可知,发送优先级1的消费队列中预置资源不足以消费队列中的待发送邮件。
在本实施例中,对于从低等级别的消费队列中调取邮件资源时,具体可以等级一下两种方式来调用:
获取所述优先级别比所述第一等级低一级的次高消费队列的预置邮件资源;
将所述预置邮件资源与所述资源份额差进行比较;
若所述预置邮件资源大于所述资源份额差,则从所述预置邮件资源中调取与所述资源份额差等量的邮件资源份额到所述第一等级对应的消费队列中;
若所述预置邮件资源小于所述资源份额差,则继续调取所述次高消费队列的次高消费队列的预置邮件资源,并计算预置邮件资源总和,直至调取所述邮件资源总和不小于所述资源份额差为止。
进一步的,在所述第一等级不是所述转发优先级表中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的还达不到所述资源份额差时,所述调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中的步骤,还包括:
从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;
从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
本实施例中,为了处理所述高优先级消费队列的待发送邮件,当所述高优先级消费队列的预置资源份额不足以支持处理所述待发送邮件时,获取次高优先级消费队列的预置资源份额,若所述次高优先级消费队列的预置资源份额满足所述资源份额差,则通过系统资源接口从所述次高优先级消费队列中的预置资源份额调取与所述资源份额差等量的资源份额到所述高优先级消费队列中,使所述高优先级消费队列的资源份额能够支持将所处待发送邮件发送完毕;若所述次高优先级的预置资源份额小于所述资源份额差,则继续调取所述次高优先级消费队列的下一优先级消费队列的预置资源份额,直至调取资源份额等于所述资源份额差,以使所述高优先级消费队列的资源份额能够支持将所述待发送邮件发送完毕。
例如,当前资源份额差为5G,若次高优先级消费队列的预置资源份额为6G,大于所述资源份额差,则通过系统资源接口从所述次高优先级消费队列中调取5G的资源份额;若次高优先级消费队列的预置资源份额为3G,小于所述资源份额差,则调取所述次高优先级消费队列的预置资源份额后,继续调取所述次高资源优先级的下一优先级对应消费队列的预置资源份额,直至调取资源份额满足所述资源份额差。
在本发明提供的实施例中,通过预置邮件的发送优先级和资源的自动调配,检测高优先级消费队列是否存在待发送邮件,若所述高优先级消费队列存在待发送邮件,则统计发送所述待发送邮件所需的目标资源份额,确定所述高优先级消费队列的预置资源份额是否大于所述目标资源份额,若所述预置资源份额小于所述目标资源份额,则调取低优先级的预置资源份额到所述高优先级消费队列,直至所述高优先级消费队列的资源份额能够将所述待发送邮件发送完毕,通过本发明,实现了邮件平台对不同发送级别的系统资源进行自动调度,避免出现邮件堵塞时,接收人无法及时收到邮件,提升接收人的使用体验。
在本实施例中,对于邮件控制平台中的邮件资源并不一定只有等级低的资源是空闲状态,其接收资源,等级高的资源,在实际应用中,在根据优先级进行邮件的发送时,其判断邮件资源是否能支持当前等级的邮件的全部发送,其仅是基于当前等级上在默认资源配置规则下的资源是否满足要求,并不是基于对上一完成等级,甚至是上几个完成等级的资源和当前等级的资源的总和判断,所以在应用时,已完成的等级的资源其实是空闲的,对此,本发明还提供了在所述第一等级不是所述转发优先级中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的第一邮件资源总和仍达不到所述资源份额差时,还包括:
从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;在实际应用中,这里选择的等级,可以是高几个等级的发送队列。
从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
在本实施例中,通过预置邮件的发送优先级和资源的自动调配,检测高优先级消费队列是否存在待发送邮件,若所述高优先级消费队列存在待发送邮件,则统计发送所述待发送邮件所需的目标资源份额,确定所述高优先级消费队列的预置资源份额是否大于所述目标资源份额,若所述预置资源份额小于所述目标资源份额,则调取低优先级的预置资源份额到所述高优先级消费队列,直至所述高优先级消费队列的资源份额能够将所述待发送邮件发送完毕,通过本发明,实现了邮件平台对不同发送级别的系统资源进行自动调度,避免出现邮件堵塞时,接收人无法及时收到邮件,提升接收人的使用体验。
为了解决上述的问题,本发明实施例还提供了一种邮件转发装置,如图4所示,所述邮件转发装置包括:
接收模块41,用于根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;
分类模块42,用于根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
排序模块43,用于将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;
获取模块44,用于获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
第一计算模块45,用于统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中,所述第二待转发邮件为所述第一待转发邮件的子集;
资源调用模块46,用于在所述可调用邮件资源与所述第二待转发邮件的数量不匹配时,调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;
转发模块47,用于基于合并后的可调用邮件资源发送所述第二待转发邮件。
通过上述的装置实现邮件的转发处理,基于检测高优先级消费队列是否存在待发送邮件,若所述高优先级消费队列存在待发送邮件,则统计发送所述待发送邮件所需的目标资源份额,确定所述高优先级消费队列的预置资源份额是否大于所述目标资源份额,若所述预置资源份额小于所述目标资源份额,则调取低优先级的预置资源份额到所述高优先级消费队列,直至所述高优先级消费队列的资源份额能够将所述待发送邮件发送完毕,通过本发明,实现了邮件平台对不同发送级别的系统资源进行自动调度,避免出现邮件堵塞时,接收人无法及时收到邮件,提升接收人的使用体验。
如图5所示,本发明实施例还提供了另一种邮件转发装置,该装置包括:
接收模块41,用于根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;
分类模块42,用于根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
排序模块43,用于将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;
获取模块44,用于获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
第一计算模块45,用于统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中所述第二待转发邮件为所述第一待转发邮件的子集;
资源调用模块46,用于在所述可调用邮件资源与所述第二待转发邮件的数量不匹配时,调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;
转发模块47,用于基于合并后的可调用邮件资源发送所述第二待转发邮件。
在本实施例中,在所述预置的发送优先级为基于发件人设置的转发优先级时,所述分类模块42具体包括:
提取单元421,用于对所述第一待转发邮件进行发件人的提取;
确定单元422,用于基于所述发件人查找所述发件人的转发优先级,确定所述发件人的邮件转发优先级别;
存储单元423,用于根据所述邮件转发优先级别,将所述第一待转发邮件从高到低进行排序,并分类存储。
在本实施例中,所述第一计算模块45具体包括:
检测单元451,用于检测所述第一等级中对应的发送队列中是否存在所述第二待转发邮件;
统计单元452,用于在所述检测单元检测存在第二待转发邮件时,统计所述发送队列完成对所述第二待转发邮件发送时所需的目标资源,其中所述目标资源等于所述第二待转发邮件的数量乘以所述发送队列发送邮件时的平均消耗资源;
比较单元453,用于将所述目标资源与所述第一等级当前的可调用资源进行比较;
匹配单元453,用于在所述目标资源大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配,以及在所述目标资源不大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量匹配。
在本实施例中,所述邮件转发装置还包括第二计算模块48和查询模块49;在所述第一计算模块45确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配时,
所述第二计算模块48,用于计算所述目标资源与所述可调用资源的资源份额差;
所述查询模块49,用于查询除了所述第一等级对应的发送队列之外的其他等级的发送队列中的第一邮件资源,确定所述第一邮件资源大于所述资源份额差的发送队列,并进行资源的调取。
在本实施例中,所述资源调用模块46包括:
判断单元461,用于判断所述第一等级是否为所述转发优先级中的最低级别;
资源修改单元462,用于在判断所述第一等级是最低级别时,从所述邮件平台中截取大小为所述资源份额差的接收资源,并将所述接收资源的类型从接收类型修改为发送类型,合并至所述可调用邮件资源中,其中,所述接收资源用于实现所述邮件平台的邮件接收,以及在判断所述第一等级不是最低级别时,优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源,直至调取第一邮件资源总和达到所述资源份额差时,将所述第一邮件资源总和合并至所述可调用邮件资源中。
在本实施例中,所述资源调用模块46还包括选择单元463,用于在所述第一等级不是所述转发优先级中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的第一邮件资源总和仍达不到所述资源份额差时,从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;
所述资源修改单元462还用于:从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
在本实施例中,所述资源修改单元462还用于:获取所述优先级别比所述第一等级低一级的次高消费队列的预置邮件资源;将所述预置邮件资源与所述资源份额差进行比较;若所述预置邮件资源大于所述资源份额差,则从所述预置邮件资源中调取与所述资源份额差等量的邮件资源份额到所述第一等级对应的消费队列中;若所述预置邮件资源小于所述资源份额差,则继续调取所述次高消费队列的次高消费队列的预置邮件资源,并计算预置邮件资源总和,直至调取所述邮件资源总和不小于所述资源份额差为止。
基于本装置的执行功能和功能对应的执行流程与上述本发明实施例的邮件转发方法实施例说明内容相同的,因此本实施例对邮件转发装置的实施例内容不做过多赘述。
在本发明实施例中,对于邮件转发装置的实现具体可以是以服务器的形式实现,即是将实现上述邮件转发方法的装置设置为邮件控制平台的服务器中的一个功能。
本发明还提供了一种邮件转发设备,所述邮件转发设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机可读程序,所述计算机可读程序被所述处理器执行时所实现的方法可参照本发明邮件转发方法的各个实施例,因此不再过多赘述。
在实际应用中,这里的邮件转发设备可以是现有的服务器结构,通过设置一个计算机可读程序来实现上述的邮件转发方法的功能即可,如图6所示,本发明实施例方案涉及的服务器的运行环境的结构示意图。
如图6所示,该邮件控制平台包括:处理器601,例如CPU,通信总线602、用户接口603,网络接口604,存储器605。其中,通信总线602用于实现这些组件之间的连接通信。用户接口603可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口604可选地可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器605可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器605可选地还可以是独立于前述处理器601的存储装置。
本领域技术人员可以理解,图6中示出的邮件控制平台的硬件结构并不构成对本发明中的邮件生转发装置和设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图6所示,作为一种计算机可读存储介质的存储器605中可以包括操作系统、网络通信程序模块、用户接口程序模块以及用于实现邮件转发方法的计算机可读程序/指令。其中,操作系统是调度邮件控制平台中各模块之间的通信以及执行存储器中存储的计算机可读程序/指令,上述实施例中的邮件转发方法。
在图6所示的服务器的硬件结构中,网络接口604主要用于接入网络;用户接口603主要用于监控并获取待发送的邮件数据,其中所述邮件数据可以是线上的邮件,也可以是线下的函件,而处理器601可以用于调用存储器605中存储的计算机可读程序,并执行以下邮件转发方法的各实施例的操作。
本发明还提供一种计算机可读存储介质。
本实施例中,所述计算机可读存储介质上存储有计算机可读程序,所述计算机可读程序被一个或多个处理器执行时所实现的方法可参照本发明邮件转发方法的各个实施例,因此不再过多赘述。
在本发明实施例提供的方法和装置,主要是通过邮件的方式来管控业务是比较普遍的方式之一,而目前该方式在发送邮件数据时多为通过在固定的格式模板中添加不同类型的数据,得到邮件的待发送数据,然后将待发送数据接入邮件平台进行发送邮件,而现有发送机制,通常用户会对邮箱的发送规则进行自定义,比如说设置转发或者发送的邮箱地址的优先级,但是这种方式针对于邮件数量少的情况下,可以实现优先的处理,而对于邮件处理数据较多且超过了邮箱服务器的资源承受能力时,其优先级的规则会出现混乱,导致出现大量的邮件堆积或者转发延时的问题,从而致使部分客户未能及时接收相关邮件,造成损失。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
Claims (10)
1.一种邮件转发方法,应用于邮件平台,其特征在于,所述邮件转发方法包括:
根据接收到的邮件发送请求,获取所述邮件平台当前的第一待转发邮件;
根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;
获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中,所述第二待转发邮件为所述第一待转发邮件的子集;
若不匹配,则调取其他等级的消费队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;
基于合并后的可调用邮件资源发送所述第二待转发邮件。
2.如权利要求1所述的邮件转发方法,其特征在于,若所述预置的发送优先级为基于发件人设置的转发优先级时,所述根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类包括:
对所述第一待转发邮件进行发件人的提取;
基于所述发件人查找所述发件人的转发优先级,确定所述发件人的邮件转发优先级别;
根据所述邮件转发优先级别,将所述第一待转发邮件从高到低进行排序,并分类存储。
3.如权利要求2所述的邮件转发方法,其特征在于,每个等级的消费队列中包括发送队列和接收队列,所述统计所述第一等级的第二待转发邮件的数量,并计算所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配包括:
检测所述第一等级中对应的发送队列中是否存在所述第二待转发邮件;
若存在,则统计所述发送队列完成对所述第二待转发邮件发送时所需的目标资源,其中所述目标资源等于所述第二待转发邮件的数量乘以所述发送队列发送邮件时的平均消耗资源;
将所述目标资源与所述第一等级当前的可调用资源进行比较;
若所述目标资源大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配;
若所述目标资源不大于所述可调用资源,则确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量匹配。
4.如权利要求3所述的邮件转发方法,其特征在于,在所述确定所述第一等级的可调用邮件资源与所述第二待转发邮件的数量不匹配之后,还包括:
计算所述目标资源与所述可调用资源的资源份额差;
查询除了所述第一等级对应的发送队列之外的其他等级的发送队列中的第一邮件资源,确定所述第一邮件资源大于所述资源份额差的发送队列,并进行资源的调取。
5.如权利要求4所述的邮件转发方法,其特征在于,所述调取其他等级的消费队列中的邮件资源,并设置所述第一邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中包括:
判断所述第一等级是否为所述转发优先级中的最低级别;
若是,则从所述邮件平台中截取大小为所述资源份额差的接收资源,并将所述接收资源的类型从接收类型修改为发送类型,合并至所述可调用邮件资源中,其中,所述接收资源用于实现所述邮件平台的邮件接收;
若否,则优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源,直至调取第一邮件资源总和达到所述资源份额差时,将所述第一邮件资源总和合并至所述可调用邮件资源中。
6.如权利要求5所述的邮件转发方法,其特征在于,在所述第一等级不是所述转发优先级中的最低级别,且调取优先级别比所述第一等级低的所有发送队列中的第一邮件资源总和仍达不到所述资源份额差时,所述调取其他等级的发送队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,还包括:
从所述消费队列中选择比所述第一等级高一级的第二等级的发送队列中的第二邮件资源;
从所述第二邮件资源中划分部分资源至所述第一邮件资源的总和中,从所述直至调取第一邮件资源总和达到所述资源份额差时,将所述邮件资源总和合并至所述可调用邮件资源中。
7.如权利要求5所述的邮件转发方法,其特征在于,所述优先从优先级别比所述第一等级低的发送队列中调取第一邮件资源包括:
获取所述优先级别比所述第一等级低一级的次高消费队列的预置邮件资源;
将所述预置邮件资源与所述资源份额差进行比较;
若所述预置邮件资源大于所述资源份额差,则从所述预置邮件资源中调取与所述资源份额差等量的邮件资源份额到所述第一等级对应的消费队列中;
若所述预置邮件资源小于所述资源份额差,则继续调取所述次高消费队列的次高消费队列的预置邮件资源,并计算预置邮件资源总和,直至调取所述邮件资源总和不小于所述资源份额差为止。
8.一种邮件转发装置,其特征在于,所述邮件转发装置包括:
接收模块,用于根据接收到的邮件发送请求,获取邮件平台当前的第一待转发邮件;
分类模块,用于根据预置的发送优先级,对所述第一待转发邮件按照优先级从高到低进行排序分类;
排序模块,用于将排序分类后的所述第一待转发邮件,按从高到低的优先级对应存储到发送邮件的消费队列中,其中,所述消费队列包括多个等级,所述等级为基于所述发送优先级中的级别逐一设置形成;
获取模块,用于获取当前的邮件转发的指示信息,并基于所述指示信息确定所述邮件平台当前待转发邮件的消费队列的第一等级;
第一计算模块,用于统计所述第一等级的第二待转发邮件的数量,并判断所述第一等级的可调用邮件资源是否与所述第二待转发邮件的数量匹配,其中,所述第二待转发邮件为所述第一待转发邮件的子集;
资源调用模块,用于在所述可调用邮件资源与所述第二待转发邮件的数量不匹配时,调取其他等级的消费队列中的邮件资源,并设置所述邮件资源的优先级为第一等级,将其合并至所述可调用邮件资源中,其中,所述邮件资源为所述邮件平台为消费队列配置的用于实现邮件数据管理的网络资源或基站资源,所述可调用邮件资源为网络资源和/或基站资源中的上行资源;
转发模块,用于基于合并后的可调用邮件资源发送所述第二待转发邮件。
9.一种邮件转发设备,其特征在于,所述邮件转发设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机可读程序,所述计算机可读程序被所述处理器执行时实现如权利要求1-7中任一项所述的邮件转发方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读程序,其特征在于,所述计算机可读程序被一个或多个处理器执行时实现如权利要求1-7中任一项所述的邮件转发方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182247.5A CN111526081B (zh) | 2020-03-16 | 2020-03-16 | 邮件转发方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182247.5A CN111526081B (zh) | 2020-03-16 | 2020-03-16 | 邮件转发方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111526081A CN111526081A (zh) | 2020-08-11 |
CN111526081B true CN111526081B (zh) | 2023-07-28 |
Family
ID=71910400
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010182247.5A Active CN111526081B (zh) | 2020-03-16 | 2020-03-16 | 邮件转发方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111526081B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134790B (zh) * | 2020-09-28 | 2023-04-14 | 平安养老保险股份有限公司 | 基于优先级的邮件发送方法、装置、设备及存储介质 |
CN114244800A (zh) * | 2021-12-01 | 2022-03-25 | 北京计算机技术及应用研究所 | 一种电子邮件监控预警方法及系统 |
CN115314323B (zh) * | 2022-10-10 | 2023-02-10 | 深圳市华云中盛科技股份有限公司 | 一种信息传输方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401764A (zh) * | 2013-08-05 | 2013-11-20 | 浪潮(北京)电子信息产业有限公司 | 一种邮件发送方法和装置 |
CN107347029A (zh) * | 2017-06-23 | 2017-11-14 | 努比亚技术有限公司 | 一种电子邮件转发方法、终端及计算机可读存储介质 |
CN110380949A (zh) * | 2019-05-24 | 2019-10-25 | 平安普惠企业管理有限公司 | 内部网邮件发送方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5482583B2 (ja) * | 2010-09-06 | 2014-05-07 | 富士通株式会社 | メールサーバ装置及び電子メール処理方法 |
-
2020
- 2020-03-16 CN CN202010182247.5A patent/CN111526081B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401764A (zh) * | 2013-08-05 | 2013-11-20 | 浪潮(北京)电子信息产业有限公司 | 一种邮件发送方法和装置 |
CN107347029A (zh) * | 2017-06-23 | 2017-11-14 | 努比亚技术有限公司 | 一种电子邮件转发方法、终端及计算机可读存储介质 |
CN110380949A (zh) * | 2019-05-24 | 2019-10-25 | 平安普惠企业管理有限公司 | 内部网邮件发送方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111526081A (zh) | 2020-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111526081B (zh) | 邮件转发方法、装置、设备及存储介质 | |
CN109104336B (zh) | 服务请求处理方法、装置、计算机设备及存储介质 | |
CN109005056B (zh) | 基于cdn应用的存储容量评估方法和装置 | |
CN107819797B (zh) | 访问请求处理方法和装置 | |
US20120016994A1 (en) | Distributed system | |
WO2021057500A1 (zh) | 一种消息发送管理方法及装置 | |
CN110659123B (zh) | 一种基于消息的分布式任务分发调度方法及装置 | |
WO2021109767A1 (zh) | 网络设备及其降低传输时延的方法 | |
US8726284B2 (en) | Managing requests based on request groups | |
CN110365605B (zh) | 一种消息发送方法、装置、设备及存储介质 | |
US8180823B2 (en) | Method of routing messages to multiple consumers | |
CN111538572A (zh) | 任务处理方法、装置、调度服务器及介质 | |
CN111190541A (zh) | 存储系统的流控方法以及计算机可读存储介质 | |
CN117768855A (zh) | 一种短信发送方法、装置、设备与存储介质 | |
CN117499258A (zh) | 业务数据网络传输管理方法及dpu | |
CN108989244B (zh) | 数据处理方法、装置、存储介质及电子设备 | |
CN114979250B (zh) | 消息推送方法、装置和设备 | |
CN111638986A (zh) | 一种QoS队列调度方法、装置、系统及可读存储介质 | |
WO2020067872A1 (en) | A method of prioritizing message handling in a publisher/subscriber broker | |
CN107911484B (zh) | 一种消息处理的方法及装置 | |
CN113364648B (zh) | 流量控制方法、系统、装置、服务设备及存储介质 | |
CN110247808B (zh) | 信息发送方法、装置、设备及可读存储介质 | |
CN108966160B (zh) | 一种短信处理方法、装置及计算机可读存储介质 | |
CN112181672B (zh) | 区块链数据的处理方法、区块链系统及计算机存储介质 | |
JP5965720B2 (ja) | メールシステム |
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 |