CN111049740B - 一种电子邮件的发送方法及装置 - Google Patents
一种电子邮件的发送方法及装置 Download PDFInfo
- Publication number
- CN111049740B CN111049740B CN201911360822.XA CN201911360822A CN111049740B CN 111049740 B CN111049740 B CN 111049740B CN 201911360822 A CN201911360822 A CN 201911360822A CN 111049740 B CN111049740 B CN 111049740B
- Authority
- CN
- China
- Prior art keywords
- sent
- network interface
- network
- mails
- sending
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种电子邮件的发送方法及装置,该方法可以由JAVA客户端所在的设备执行,该方法包括:确定与待发送电子邮件中发件邮箱帐号对应的SMTP长连接池,其中,SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接。然后获取距离当前时刻之前的第一设定时长内已发送电子邮件的历史发送信息,进一步地,根据已发送电子邮件的历史发送信息,从M个网络运营商的N个网络接口中,确定与发件邮箱帐号对应的目标网络运营商的目标网络接口,最终通过目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送待发送电子邮件。该方法用以节省邮件系统组建成本,实现邮件快速发送的目的。
Description
技术领域
本发明实施例涉及通信领域,尤其涉及一种电子邮件的发送方法及装置。
背景技术
随着计算机技术的发展,电子邮件技术越来越普及。同时,由于金融行业的安全性、实时性要求,对电子邮件技术也提出了要求。在通常情况下,若想建立自己的电子邮件系统,主要通过搭建专门的服务器集群做邮件服务器,且还需要建立防火墙拦截系统、垃圾邮件识别系统等,所以存在维护成本较高、连接效率低等问题。所以现有技术中,一般通过租借第三方邮件服务器,由第三方邮件服务器来完成邮件发送工作,从而降低成本。这种情况下,用户只需在每次发送邮件的时候,从第三方邮件服务器提供的接口中选择一个接口,客户端与接口建立连接后,通过该连接将待发邮件发送到该第三方邮件服务器,由第三方邮件服务器进行后续发送工作。
但是,目前上述方法存在因为每次发送的发件邮箱账号不同,所以每次邮件发送完成后连接会被关闭,所以往往使用新的发件邮箱账号再次建立连接,可见,这样会降低邮件的发送效率。
发明内容
本发明实施例提供一种电子邮件的发送方法及装置,用以提高邮件的发送效率。
第一方面,本发明实施例提供一种电子邮件的发送方法,该方法包括:客户端确定与待发送电子邮件中发件邮箱帐号对应的简单邮件传输协议SMTP长连接池,其中,所述SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数。进一步地,客户端获取距离当前时刻之前的第一设定时长内的已发送电子邮件的历史发送信息,所述已发送电子邮件分别对应不同网络运营商的不同网络接口的不同长连接。再进一步地,客户端根据所述已发送电子邮件的历史发送信息,从所述M个网络运营商的N个网络接口中,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。然后客户端通过所述目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送所述待发送电子邮件。
本发明实施例中,首先建立服务器与客户端之间的长连接,通过根据已发送电子邮件的历史发送信息,也就是电子邮件发送记录的信息,计算出每个接口的可用概率,再根据该概率选择接口,通过该接口的连接发送电子邮件到服务器,再由服务器完成后续工作。本发明的技术方案克服了现有技术中存在的问题,提高了电子邮件发送的效率,对接口的选择策略更加灵活。
在一种可能的设计中,所述已发送电子邮件的历史发送信息包括所述M个网络运营商的N个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长。
进一步地,客户端根据所述已发送电子邮件的历史发送信息,从所述M个网络运营商的N个网络接口中,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口,包括:针对任意一个网络运营商的任意一个网络接口,根据每个网络运营商的每个接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率。然后客户端根据所述M个网络运营商的N个网络接口的可用概率,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
本发明实施例中,客户端通过各个接口对应的已发送电子邮件的历史发送信息,也就是已发送邮件的个数、是否成功、完成发送耗时等电子邮件的历史发送信息来计算对应接口的可用概率。
在一种可能的设计中,客户端首先针对任意一个网络运营商的任意一个网络接口,按照公式一计算所述网络接口的权重值;并根据所述权重值,按照公式二计算所述网络接口的可用概率。其中,权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;可用概率=所述网络接口的权重值/所述M个网络运营商的N个网络接口的权重值之和………公式二。
其中,a为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为所述网络接口在所述第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为所述网络接口在所述第一设定时长内发送失败的电子邮件个数。
其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
本发明实施例中,进一步描述客户端如何根据上述公式一、公式二计算各个网络接口对应的可用概率,保证了选择网络接口的灵活性,并且具有简单可行的优点。
在一种可能的设计中,客户端根据所述已发送电子邮件的历史发送信息,确定第一网络运营商的第一网络接口在第二设定时长内未进行邮件发送,其中,所述第一网络运营商的第一网络接口为所述M个网络运营商的N个网络接口中的其中一个;确定所述第一网络运营商的第一网络接口为与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
本发明实施例中,客户端对网络接口选择策略进行完善,优先选择长时间未发送邮件的接口进行邮件的发送,避免出现接口因为长时间没有使用而被第三方邮件服务器,也就是该SMTP服务器断开连接的情况。使本发明的技术方案更加完善,更加灵活。
在一种可能的设计中,客户端确定在第三设定时长内未发送电子邮件时,关闭所述SMTP长连接池中的长连接。
第二方面,本发明实施例提供一种电子邮件的发送装置,该装置的技术效果可以参照上述方法实施例,该装置包括:
处理单元,用于确定与待发送电子邮件中发件邮箱帐号对应的SMTP长连接池,其中,所述SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数。进一步地,获取距离当前时刻之前的第一设定时长内的已发送电子邮件的历史发送信息,所述已发送电子邮件分别对应不同网络运营商的不同网络接口的不同长连接。其中,根据所述已发送电子邮件的历史发送信息,从所述M个网络运营商的N个网络接口中,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
发送单元,用于通过所述目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送与所述发件邮箱帐号相关的待发送电子邮件。
在一种可能的实施例中,所述已发送电子邮件的历史发送信息包括:所述M个网络运营商的N个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长。
所述处理单元,具体用于针对任意一个网络运营商的任意一个网络接口,根据每个网络运营商的每个接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率;还用于根据所述M个网络运营商的N个网络接口的可用概率,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
在一种可能的实施例中,所述处理单元,具体用于针对任意一个网络运营商的任意一个网络接口,根据每个网络运营商的每个接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算网络接口的可用概率;还用于根据M个网络运营商的N个网络接口的可用概率,确定与发件邮箱帐号对应的目标网络运营商的目标网络接口。
在一种可能的实施例中,处理单元,具体用于:针对任意一个网络运营商的任意一个网络接口,按照公式一计算网络接口的权重值;并根据权重值,按照公式二计算网络接口的可用概率,包括:
权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;
可用概率=网络接口的权重值/M个网络运营商的N个网络接口的权重值之和………公式二;
其中,a为网络接口在第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为网络接口在第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为网络接口在第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为网络接口在第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为网络接口在第一设定时长内发送失败的电子邮件个数。
其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K3为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
在一种可能的实施例中,处理单元还用于选择第二设定时长内没有被选中的网络接口,连接所述SMTP服务器,发送电子邮件。
在一种可能的实施例中,处理单元,确定在第三设定时长内未发送电子邮件时,关闭SMTP长连接池中的长连接。
第三方面,本发明实施例提供的一种计算设备,包括至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行如上述第一方面任意所述的邮件发送方法。
第四方面,本发明实施例提供的一种计算机可读存储介质,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行如上述第一方面任意所述的邮件发送方法。
本发明的这些方面或其它方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种电子邮件发送系统构架图;
图2为本申请实施例提供的一种电子邮件发送系统构架图;
图3为本申请实施例提供的一种电子邮件的发送方法流程示意图;
图4为本申请实施例提供的一种电子邮件发送装置示意图;
图5为本申请实施例提供的一种计算设备结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为一种电子邮件发送系统构架图,包括JAVA(一种计算机编程语言)客户端101和SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器103。
其中,JAVA客户端101设有JAVA MAIL(一种处理电子邮件相关的编程接口)组件102,JAVA客户端101与SMTP服务器103建立长连接,进一步地,JAVA客户端101通过该长连接将电子邮件发送给SMTP服务器103,SMTP服务器103对该电子邮件进行处理后发送给对应收件邮箱帐号。
在一种可能的实施例中,结合如图2所示的电子邮件发送系统,在JAVA MAIL组件102中生成连接池104、连接池105、连接池106,其中,每个发件邮箱帐号对应一个连接池,比如连接池104对应发件邮箱账号a@.com;连接池105对应发件邮箱账号b@.com;连接池106对应发件邮箱账号c@.com。
进一步地,连接池104、连接池105、连接池106与SMTP服务器103中的各个网络接口建立好连接之后,JAVA MAIL组件102发送电子邮件给SMTP服务器103,其中,连接池104可以对应的网络接口包括:网络接口107、网络接口108、网络接口109、网络接口110、网络接口111和网络接口112;连接池105可以对应的网络接口包括:网络接口107、网络接口108、网络接口109、网络接口110、网络接口111和网络接口112;连接池106可以对应的网络接口包括:网络接口107、网络接口108、网络接口109、网络接口110、网络接口111和网络接口112。
需要说明的是,图1仅是一种示例性的简单说明,并不构成对方案的限定,在具体实施中,连接池的数量以及客户端、服务器的结构及功能均可以由本领域技术人员根据需要进行设置,具体不作限定。
为了进一步地解释本发明实施例,图3为一种电子邮件的发送方法流程示意图,该方法可以由上述JAVA客户端101所在的设备执行,该方法具体包括如下步骤:
步骤301:确定与待发送电子邮件中发件邮箱帐号对应的SMTP长连接池,其中,SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数。
示例性地,若待发送电子邮件的发件邮箱账号为a@.com,则与之对应的SMTP长连接池为连接池104,可选地,连接池104对应与网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112建立了长连接。
步骤302:获取距离当前时刻之前的设定时长内,与每个网络运营商的每个网络接口的每个长连接对应的已发送电子邮件的历史发送信息。
在一种可能的实施例中,该已发送电子邮件的历史发送信息可以包括:各个网络运营商的各个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长。
示例性地,获取当前时刻之前的5分钟内,待发送电子邮件所在的连接池的每个网络接口的每个长连接对应的已发送电子邮件的历史发送信息。如获取连接池104中网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112对应的已发送电子邮件的历史发送信息。进一步地,计算网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112对应的可用概率。
步骤303:根据已发送电子邮件的历史发送信息,从M个网络运营商的N个网络接口中,确定与发件邮箱帐号对应的目标网络运营商的目标网络接口。
在一种可能的实施例中,针对任意一个网络运营商的任意一个网络接口,根据每个网络运营商的每个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率。进一步地,根据所述M个网络运营商的N个网络接口的可用概率,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
可选地,JAVA客户端101根据网络接口107的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口107的可用概率。进一步地,根据网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112的可用概率,确定出目标网络接口。
其中,在一种可能的实施例中,客户端首先针对任意一个网络运营商的任意一个网络接口,按照公式一计算所述网络接口的权重值;并根据所述权重值,按照公式二计算所述网络接口的可用概率。其中,权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;可用概率=所述网络接口的权重值/所述M个网络运营商的N个网络接口的权重值之和………公式二。
其中,a为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为所述网络接口在所述第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为所述网络接口在所述第一设定时长内发送失败的电子邮件个数。其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K3为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
在一种可能的实施例中,JAVA客户端101定期根据设定时长的电子邮件发送信息计算各个网络接口的可用概率。
示例性地,JAVA客户端101每2分钟根据当前5分钟内的电子邮件发送信息计算网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112的权重值并的得到各个网络接口的可用概率。
示例性地,SMTP服务器103的网络运营商提供的网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112在当前5分钟内的已发送电子邮件信息如表1所示:
表1
根据表1中的已发送电子邮件的历史发送信息,结合表2所示的初始分组权重,计算网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112的权重值。
表2
耗时 | 分组权重 |
0-300ms | 100 |
300ms-800ms | 50 |
800ms–1500ms | 15 |
超过1500ms | 5 |
示例性地,JAVA客户端101根据公式一计算网络接口107的权重值。其中,权重值=|(a×100+b×50+c×15+d×5)/(a+b+c+d)-5e+1|………公式一;可选地,a为网络接口107在当前5分钟内发送成功且耗时为0-300ms的已发送电子邮件的个数;b为网络接口107在当前5分钟内发送成功且耗时为300ms-800ms的已发送电子邮件的个数;c为网络接口107在当前5分钟内发送成功且耗时为800ms-1500ms的已发送电子邮件的个数;d为网络接口107在当前5分钟内发送成功且耗时为超过1500ms的已发送电子邮件的个数;e为网络接口107在当前5分钟内发送失败的电子邮件个数,其中超时没有结果返回的请求也算失败。
进一步地,网络接口107的权重值=(1*100+3*50)/(1+3)–50+1=62.5。网络接口110在5分钟内没有进行连接,所以权重值为0。网络接口111因5分钟内有失败投递,权重值计算结果为1。网络接口112连接正常。
进一步地,JAVA客户端101根据公式二计算网络接口107的可用概率,其中,可用概率=所述网络接口的权重值/所述M个网络运营商的N个网络接口的权重值之和………公式二。
邮件通过网络接口107发送的概率为:62.5/(62.5+38.3+50+1+32.5)=33.9%;
通过网络接口108发送的概率为:38.3/(62.5+38.3+50+1+32.5)=20.8%;
通过网络接口109发送的概率为:50/(62.5+38.3+50+1+32.5)=27.1%;
通过网络接口110发送的概率为0;
通过网络接口111发送的概率为1/(62.5+38.3+50+1+32.5)=0.54%;
通过网络接口112发送的概率为:32.5/(62.5+38.3+50+1+32.5)=17.6%;
进一步地,JAVA客户端101根据各个网络接口对应的可用概率来选择目标网络接口。
在一种可能的实施例中,JAVA客户端101根据所述已发送电子邮件的历史发送信息,确定第一网络运营商的第一网络接口在第二设定时长内未进行邮件发送,其中,所述第一网络运营商的第一网络接口为所述M个网络运营商的N个网络接口中的其中一个;确定所述第一网络运营商的第一网络接口为与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
可选地,设定在15分钟内优先选择网络接口110发送一次电子邮件。
在一种可能的实施例中,JAVA客户端101确定在第三设定时长内未发送电子邮件时,关闭SMTP长连接池中的长连接。
示例性地,当前20分钟内无任何电子邮件发送任务,JAVA客户端101关闭与SMTP服务器103中网络接口107、网络接口108、网络接口109、网络接口110、网络接口111、网络接口112的连接。JAVA客户端101通过主动关闭与SMTP服务器的连接,实现节省通信资源和对各个网络接口的控制。
在一种可能的实施例中,根据所述已发送电子邮件的历史发送信息对所述分组权重进行优化,包括:调整K1、K2、K3、K4中任意一个,根据第四设定时长内的所述已发送电子邮件的平均时长,对所述分组权重进行优化。
示例性地,JAVA客户端101获取当前5分钟内的已发送电子邮件信息,选择一个实例,对实例中任意一项分组权重进行调节,比如,将耗时0-300ms的分组权重由100提高到200;然后获取设定周期的已发送电子邮件的历史发送信息,根据该信息确定电子邮件的平均耗时,对分组权重进行调节。比如当平均耗时变低时,提高该分组权重。
步骤304:通过目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送与发件邮箱帐号相关的待发送电子邮件。
在一种可能的实施例中,JAVA客户端101在得到各个网络接口对应的可用概率后,选择一个目标网络接口。进一步地,JAVA客户端101通过与该目标接口之间的长连接向SMTP服务器103发送电子邮件。可选地,JAVA客户端101记录此次邮件发送信息。
在另外一种可能的实施例中,JAVA客户端101与所有网络接口建立并保留长连接。
在另外一种可能的实施例中,可以有超过一个SMTP服务器同时作为第三方邮件服务器。可选地,根据SMTP服务器分组管理多种类型的连接池,也就是说,不同的SMTP服务器对应的连接池可以不同。
基于相同的技术构思,本发明实施例还提供一种电子邮件发送装置,该装置可执行图3中电子邮件的发送方法的实施例。本发明实施例提供的装置如图4所示,包括:
处理单元401,用于确定与待发送电子邮件中发件邮箱帐号对应的SMTP长连接池,其中,SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数。进一步地,获取距离当前时刻之前的第一设定时长内,与每个网络接口的每个长连接对应的已发送电子邮件的历史发送信息。该已发送电子邮件分别对应不同网络运营商的不同网络接口的不同长连接。其中,处理单元401根据该已发送电子邮件的历史发送信息,从M个网络运营商的N个网络接口中,确定与发件邮箱帐号对应的目标网络运营商的目标网络接口。
发送单元402,用于通过目标网络运营商的目标网络接口上的长连接,向SMTP服务器103发送与发件邮箱帐号相关的待发送电子邮件。
在一种可能的实施例中,已发送电子邮件的历史发送信息包括:网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长。
处理单元401,具体用于针对任意一个网络运营商的任意一个网络接口,根据每个网络运营商的每个接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算网络接口的可用概率;还用于根据M个网络运营商的N个网络接口的可用概率,确定与发件邮箱帐号对应的目标网络运营商的目标网络接口。
在一种可能的实施例中,处理单元401,具体用于:针对任意一个网络运营商的任意一个网络接口,按照公式一计算网络接口的权重值;并根据权重值,按照公式二计算网络接口的可用概率,包括:
权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;
可用概率=网络接口的权重值/M个网络运营商的N个网络接口的权重值之和………公式二;
其中,a为网络接口在第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为网络接口在第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为网络接口在第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为网络接口在第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为网络接口在第一设定时长内发送失败的电子邮件个数。
其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K3为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
在一种可能的实施例中,处理单元401,还用于选择第二设定时长内没有被选中的网络接口,连接SMTP服务器,发送电子邮件。
在一种可能的实施例中,处理单元401确定在第三设定时长内未发送电子邮件时,关闭SMTP长连接池中的长连接。
在一种可能的实施例中,还包括优化单元,用于根据已发送电子邮件的历史发送信息对分组权重进行优化。
在一种可能的实施例中,优化单元具体用于调整K1、K2、K3、K4中任意一个,根据第四设定时长内的已发送邮件的平均时长,对所述分组权重进行优化。
基于相同的技术构思,本发明实施例提供了一种计算设备,如图5所示,包括至少一个处理器501,以及与至少一个处理器连接的存储器502,本发明实施例中不限定处理器501与存储器502之间的具体连接介质,图5中处理器501和存储器502之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
在本发明实施例中,存储器502存储有可被至少一个处理器501执行的指令,至少一个处理器501通过执行存储器502存储的指令,可以执行前述的结算方法中所包括的步骤。
其中,处理器501是终端设备的控制中心,可以利用各种接口和线路连接终端设备的各个部分,通过运行或执行存储在存储器502内的指令以及调用存储在存储器502内的数据,从而处理数据。可选的,处理器501可包括一个或多个处理单元,处理器501可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器501中。在一些实施例中,处理器501和存储器502可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器501可以是通用处理器,例如中央处理器(CPU)、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本发明实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器502作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器502可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器502是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本发明实施例中的存储器502还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
基于相同的技术构思,本发明实施例提供了一种计算机可读介质,其存储有可由终端设备执行的计算机程序,当所述程序在终端设备上运行时,使得所述终端设备执行结算方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种电子邮件的发送方法,其特征在于,包括:
确定与待发送电子邮件中发件邮箱帐号对应的简单邮件传输协议SMTP长连接池,其中,每个发件邮箱帐号对应一个SMTP长连接池,所述SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数;
获取距离当前时刻之前的第一设定时长内的已发送电子邮件的历史发送信息,所述已发送电子邮件分别对应不同网络运营商的不同网络接口的不同长连接;
根据所述已发送电子邮件的历史发送信息,计算所述网络接口的可用概率;根据所述M个网络运营商的N个网络接口的可用概率,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口;
通过所述目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送所述待发送电子邮件。
2.根据权利要求1所述的方法,其特征在于,所述已发送电子邮件的历史发送信息包括:各个网络运营商的各个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长;
根据所述已发送电子邮件的历史发送信息,计算所述网络接口的可用概率,包括:
针对任意一个网络运营商的任意一个网络接口,根据各个网络运营商的各个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率。
3.根据权利要求2所述的方法,其特征在于,所述根据各个网络运营商的各个接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率,包括:
针对任意一个网络运营商的任意一个网络接口,按照公式一计算所述网络接口的权重值;并根据所述权重值,按照公式二计算所述网络接口的可用概率;
权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;
可用概率=所述网络接口的权重值/所述M个网络运营商的N个网络接口的权重值之和………公式二;
其中,a为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为所述网络接口在所述第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为所述网络接口在所述第一设定时长内发送失败的电子邮件个数;
其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K3为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
4.根据权利要求1所述的方法,其特征在于,还包括:
根据所述已发送电子邮件的历史发送信息,确定第一网络运营商的第一网络接口在第二设定时长内未进行邮件发送,其中,所述第一网络运营商的第一网络接口为所述M个网络运营商的N个网络接口中的其中一个;
确定所述第一网络运营商的第一网络接口为与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述方法还包括:
确定在第三设定时长内未发送电子邮件时,关闭所述SMTP长连接池中的长连接。
6.一种电子邮件的发送装置,其特征在于,所述装置包括:
处理单元,用于确定与待发送电子邮件中发件邮箱帐号对应的简单邮件传输协议SMTP长连接池,其中,每个发件邮箱帐号对应一个SMTP长连接池,所述SMTP长连接池包括M个网络运营商的N个网络接口的K个长连接,M、N和K均为大于或等于1的正整数;获取距离当前时刻之前的第一设定时长内的已发送电子邮件的历史发送信息,所述已发送电子邮件分别对应不同网络运营商的不同网络接口的不同长连接;根据所述已发送电子邮件的历史发送信息,计算所述网络接口的可用概率;根据所述M个网络运营商的N个网络接口的可用概率,确定与所述发件邮箱帐号对应的目标网络运营商的目标网络接口;
发送单元,用于通过所述目标网络运营商的目标网络接口上的长连接,向SMTP服务器发送所述待发送电子邮件。
7.根据权利要求6所述的装置,其特征在于,所述已发送电子邮件的历史发送信息包括:各个网络运营商的各个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长;
所述处理单元具体用于:
针对任意一个网络运营商的任意一个网络接口,根据各个网络运营商的各个网络接口下的已发送电子邮件的个数、已发送电子邮件是否发送成功,已发送电子邮件完成发送所需时长,计算所述网络接口的可用概率。
8.根据权利要求7所述的装置,其特征在于,所述处理单元具体用于:
针对任意一个网络运营商的任意一个网络接口,按照公式一计算所述网络接口的权重值;并根据所述权重值,按照公式二计算所述网络接口的可用概率;
权重值=|(a×K1+b×K2+c×K3+d×K4)/(a+b+c+d)-K5 e+C|………公式一;
可用概率=所述网络接口的权重值/所述M个网络运营商的N个网络接口的权重值之和………公式二;
其中,a为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间一的已发送电子邮件的个数;b为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间二的已发送电子邮件的个数;c为所述网络接口在所述第一设定时长内发送成功且耗时落在时长区间三的已发送电子邮件的个数;d为所述网络接口在所述第一设定时长内发送成功且耗时超过设定阈值的已发送电子邮件的个数;e为所述网络接口在所述第一设定时长内发送失败的电子邮件个数;
其中,K1为与时长区间一对应的权重;K2为与时长区间二对应的权重;K3为耗时为与时长区间三对应的权重;K4为与时长区间三对应的权重;K5为设定第一常数;C为设定第二常数。
9.根据权利要求6所述的装置,其特征在于,所述处理单元还用于:
根据所述已发送电子邮件的历史发送信息,确定第一网络运营商的第一网络接口在第二设定时长内未进行邮件发送,其中,所述第一网络运营商的第一网络接口为所述M个网络运营商的N个网络接口中的其中一个;
确定所述第一网络运营商的第一网络接口为与所述发件邮箱帐号对应的目标网络运营商的目标网络接口。
10.根据权利要求6至9任一项所述的装置,其特征在于,所述处理单元还用于:
确定在第三设定时长内未发送电子邮件时,关闭所述SMTP长连接池中的长连接。
11.一种计算设备,其特征在于,包括至少一个处理单元以及至少一个存储单元,其中,所述存储单元存储有计算机程序,当所述程序被所述处理单元执行时,使得所述处理单元执行权利要求1-5任一权利要求所述的方法。
12.一种计算机可读存储介质,其特征在于,其存储有可由计算设备执行的计算机程序,当所述程序在所述计算设备上运行时,使得所述计算设备执行权利要求1-5任一权利要求所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360822.XA CN111049740B (zh) | 2019-12-25 | 2019-12-25 | 一种电子邮件的发送方法及装置 |
PCT/CN2020/129122 WO2021129228A1 (zh) | 2019-12-25 | 2020-11-16 | 一种电子邮件的发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911360822.XA CN111049740B (zh) | 2019-12-25 | 2019-12-25 | 一种电子邮件的发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111049740A CN111049740A (zh) | 2020-04-21 |
CN111049740B true CN111049740B (zh) | 2023-04-18 |
Family
ID=70239875
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911360822.XA Active CN111049740B (zh) | 2019-12-25 | 2019-12-25 | 一种电子邮件的发送方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111049740B (zh) |
WO (1) | WO2021129228A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111049740B (zh) * | 2019-12-25 | 2023-04-18 | 深圳前海微众银行股份有限公司 | 一种电子邮件的发送方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104092599A (zh) * | 2014-07-24 | 2014-10-08 | 广东欧珀移动通信有限公司 | 一种移动终端检测邮件发件服务器端口的方法及移动终端 |
CN104363611A (zh) * | 2014-11-05 | 2015-02-18 | 中国联合网络通信集团有限公司 | 切换测试方法及系统 |
CN105451197A (zh) * | 2014-09-29 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种通讯信息的发送方法和装置 |
CN110611891A (zh) * | 2019-08-29 | 2019-12-24 | 深圳市梦网科技发展有限公司 | 一种短信发送方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101184268A (zh) * | 2005-05-20 | 2008-05-21 | 华为技术有限公司 | 多媒体消息系统中mm4接口消息的发送方法 |
CN102404698A (zh) * | 2010-09-15 | 2012-04-04 | 中国移动通信集团公司 | 无线邮件推送方法、装置和系统 |
CN111049740B (zh) * | 2019-12-25 | 2023-04-18 | 深圳前海微众银行股份有限公司 | 一种电子邮件的发送方法及装置 |
-
2019
- 2019-12-25 CN CN201911360822.XA patent/CN111049740B/zh active Active
-
2020
- 2020-11-16 WO PCT/CN2020/129122 patent/WO2021129228A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104092599A (zh) * | 2014-07-24 | 2014-10-08 | 广东欧珀移动通信有限公司 | 一种移动终端检测邮件发件服务器端口的方法及移动终端 |
CN105451197A (zh) * | 2014-09-29 | 2016-03-30 | 阿里巴巴集团控股有限公司 | 一种通讯信息的发送方法和装置 |
CN104363611A (zh) * | 2014-11-05 | 2015-02-18 | 中国联合网络通信集团有限公司 | 切换测试方法及系统 |
CN110611891A (zh) * | 2019-08-29 | 2019-12-24 | 深圳市梦网科技发展有限公司 | 一种短信发送方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111049740A (zh) | 2020-04-21 |
WO2021129228A1 (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110858843B (zh) | 业务请求处理方法、装置及计算机可读存储介质 | |
CN111049756B (zh) | 请求响应方法、装置、电子设备及计算机可读存储介质 | |
US10992594B2 (en) | Optimization of network resources | |
CN109379445A (zh) | 一种推送消息的发送方法及装置 | |
CN110601965B (zh) | 消息分发方法、装置、系统以及消息网关 | |
CN104283643A (zh) | 报文限速方法和装置 | |
CN111049740B (zh) | 一种电子邮件的发送方法及装置 | |
CN111400039A (zh) | 云平台的控制方法和装置、云平台系统、电子设备 | |
CN109348512B (zh) | 业务用量的调整方法、装置及存储介质 | |
CN112654003A (zh) | 一种发送消息的方法、装置、存储介质及电子设备 | |
CN111262783B (zh) | 一种动态路由的方法及装置 | |
CN102957594A (zh) | 基于消息队列的消息处理方法、相关设备及系统 | |
CN109373521B (zh) | 空调器的通讯方法、装置、室外机、室内机及空调器 | |
CN109120527B (zh) | 一种传输业务流量的方法和系统 | |
CN108023938B (zh) | 一种消息发送方法及服务器 | |
US20210105588A1 (en) | Method, apparatus, and program for automatically selecting message transmission channel and transmitting message | |
CN117879992A (zh) | 升级数据传输方法、装置、电子设备及存储介质 | |
CN112910987A (zh) | 消息推送方法、系统、装置、设备及存储介质 | |
CN115442453A (zh) | 一种云数据传输方法、装置、计算设备及存储介质 | |
CN114205160B (zh) | 基于区块链的数据处理方法、装置及电子设备 | |
CN115834509A (zh) | 消息处理方法、装置、存储介质及电子设备 | |
CN113518459B (zh) | 资源调度处理方法、装置及电子设备 | |
WO2023043370A2 (en) | Method and apparatus for sending logs, and log management system | |
US11481347B2 (en) | Data transmission system and resource allocation method thereof | |
CN103384219B (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 |