CN103607339B - 基于内容自动调节邮件发送策略的方法和系统 - Google Patents
基于内容自动调节邮件发送策略的方法和系统 Download PDFInfo
- Publication number
- CN103607339B CN103607339B CN201310412080.7A CN201310412080A CN103607339B CN 103607339 B CN103607339 B CN 103607339B CN 201310412080 A CN201310412080 A CN 201310412080A CN 103607339 B CN103607339 B CN 103607339B
- Authority
- CN
- China
- Prior art keywords
- module
- sending
- domain name
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004458 analytical method Methods 0.000 claims abstract description 36
- 230000005540 biological transmission Effects 0.000 claims description 54
- 230000032683 aging Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000004821 distillation Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种用于基于内容自动调节邮件发送策略的方法和系统。所述方法包括:由邮件生成模块生成邮件;由邮件存储模块存储所生成的邮件;由取数据模块通过自动调节取数据规则从所述邮件存储模块取出邮件并将取出的邮件放入发送队列中;由邮件发送模块根据发送规则将所述发送队列中的邮件发送到服务提供商;以及由邮件分析模块分析所述发送的结果并将分析结果反馈给所述取数据模块和所述邮件发送模块,以基于所述分析结果来改变所述取数据规则和所述发送规则。
Description
技术领域
本发明涉及互联网技术,特别涉及一种基于内容自动调节邮件发送策略的方法和系统。
背景技术
随着互联网技术的发展,越来越多的人开始利用网络资源。电子邮件是互联网上使用最多的服务之一。在现实中,很多企业都有基于内容方式进行邮件发送的需求,例如,电子商务的邮件跟踪、短信跟踪等。
然而,用户对这种邮件需求存在巨大的业务差异性,包括数量、时效性等。邮件服务提供商对于邮件发送也有种种限制,包括发送频率、数量、内容限制等等,并且返回内容也各种各样。
另外,作为一种有限制的资源,还需要同时满足日趋增加的、并且及时发送到用户邮箱需求,而且要保证整体的发送量和成功率也是个难点。
因此,在现有技术下,为了符合邮件服务提供商合法发送规则的前提,同时满足邮件发送量和成功率的最大化和发送策略灵活性,需要提供一种新的基于内容自动调节邮件发送策略的方案。
发明内容
根据本发明的一方面,提供了一种用于基于内容自动调节邮件发送策略的方法,所述方法包括:由邮件生成模块生成邮件;由邮件存储模块存储所生成的邮件;由取数据模块通过自动调节取数据规则从所述邮件存储模块取出邮件并将取出的邮件放入发送队列中;由邮件发送模块根据发送规则将所述发送队列中的邮件发送到服务提供商;以及由邮件分析模块分析所述发送的结果并将分析结果反馈给所述取数据模块和所述邮件发送模块,以基于所述分析结果来改变所述取数据规则和所述发送规则,所述生成的步骤进一步包括:由邮件添加推荐商品模块根据用户购买的商品以及历史记录,将相关的商品添加到所生成的邮件中。
优选地,所述将取出的邮件放入发送队列的步骤进一步包括:判断所述邮件的域名是否是限制域名;如果所述邮件是限制域名,则将所述邮件放入限制域队列中;以及如果所述邮件不是限制域名,则将所述邮件放入相应的域名队列中。
优选地,所述根据发送规则将所述发送队列中的邮件发送到服务提供商的步骤进一步包括:判断所述邮件的域名是否是批量发送;如果所述域名是批量发送,则从所述发送队列中批量取出数据;以及如果所述域名不是批量发送,则从所述发送队列中逐条取出数据。
优选地,所述方法进一步包括:判断是否从所述相应的域名队列中取到数据;如果没有取到所述数据,则从其他队列取出数据;以及判断是否从所述其他队列取到数据。
优选地,所述根据发送规则将所述发送队列中的邮件发送到服务提供商的步骤进一步包括:判断所述邮件是否采用IP发送;如果所述邮件采用IP发送,则基于权重来选择IP以直接建立连接进行发送;如果所述邮件不是采用IP发送,则采用域名直接建立连接进行发送。
优选地,所述分析所述发送的结果的步骤进一步包括:判断所述发送是否成功;以及如果没有成功,则判断发送错误的类型。
优选地,所述取数据规则的考虑因素包括域的未发送量、发送状态、先进先出、邮件优先级、邮件的时效性中的至少一个。
优选地,所述发送规则的考虑因素包括自动调节线程数、自动调节单位时间发送的邮件数量、自动调节邮件发送速度、自动选择IP建立连接中的至少一个。
优选地,所述发送错误的类型包括邮件不存在类型、发送限制类型、I/O错误类型以及其他错误类型。
根据本发明的另一方面,提供了一种用于基于内容自动调节邮件发送策略的系统,所述系统包括:邮件生成模块,所述邮件生成模块用于生成邮件;邮件存储模块,所述邮件存储模块用于存储所生成的邮件;取数据模块,所述取数据模块用于通过自动调节取数据规则从所述邮件存储模块取出邮件并将取出的邮件放入发送队列中;邮件发送模块,所述邮件发送模块用于根据发送规则将所述发送队列中的邮件发送到服务提供商;以及邮件分析模块,所述邮件分析模块用于分析所述发送的结果并将分析结果反馈给所述取数据模块和所述邮件发送模块,以基于所述分析结果来改变所述取数据规则和所述发送规则,所述系统进一步包括邮件添加推荐商品模块,所述邮件添加推荐商品模块用于根据用户购买的商品以及历史记录,将相关的商品添加到所生成的邮件中。
优选地,所述取数据模块进一步用于:判断所述邮件的域名是否是限制域名;如果所述邮件是限制域名,则将所述邮件放入限制域队列中;以及如果所述邮件不是限制域名,则将所述邮件放入相应的域名队列中。
优选地,所述邮件发送模块进一步用于:判断所述邮件的域名是否是批量发送;如果所述域名是批量发送,则从所述发送队列中批量取出数据;以及如果所述域名不是批量发送,则从所述发送队列中逐条取出数据。
优选地,所述邮件发送模块进一步用于:判断是否从所述相应的域名队列中取到数据;如果没有取到所述数据,则从其他队列取出数据;以及判断是否从所述其他队列取到数据。
优选地,所述邮件发送模块进一步用于:判断所述邮件是否采用IP发送;如果所述邮件采用IP发送,则基于权重来选择IP以直接建立连接进行发送;如果所述邮件不是采用IP发送,则采用域名直接建立连接进行发送。
优选地,所述邮件分析模块进一步用于:判断所述发送是否成功;以及如果没有成功,则判断发送错误的类型。
优选地,所述取数据规则的考虑因素包括域的未发送量、发送状态、先进先出、邮件优先级、邮件的时效性中的至少一个。
优选地,所述发送规则的考虑因素包括自动调节线程数、自动调节单位时间发送的邮件数量、自动调节邮件发送速度、自动选择IP建立连接中的至少一个。
优选地,所述发送错误的类型包括邮件不存在类型、发送限制类型、I/O错误类型以及其他错误类型。
本发明的邮件发送策略的方案满足了在限定的资源和规则下,邮件发送量、及时性和成功率的最大化以及发送策略的灵活性。
附图说明
附图图示了本发明的实施例,并与说明书一起用于解释本发明的原理。在附图中:
图1是根据本发明的实施例的基于内容来自动调节邮件发送策略的系统的体系架构图。
图2是根据本发明的实施例的邮件发送中心端的邮件生产者的流程图。
图3是根据本发明的实施例的邮件发送中心端的邮件消费者的流程图。
具体实施方式
下面将参照附图详细解释根据本发明的实施例的技术方案。
如在此使用的术语“邮件发送量”指的是通过平台发送的邮件的数量。如在此使用的术语“邮件发送成功率”指的是发送的邮件到达目标邮箱中的数目与邮件发送量的比率。
如在此使用的术语“邮件模板”指的是邮件的框架或样板,它可以确定和安排邮件的某些固定的内容。邮件模板通常包括固定的格式编码、文字、图片和链接等。
在所述发送系统中,为了在保障邮件发送量和成功率的同时,提供邮件任务发送的及时性。本发明的实施例采用多个节点,每个节点分模块各施其责来实现该目标。具体地,该邮件发送策略根据内容(例如,重要邮件、一般邮件、量多邮件三种类型)自动初始化节点来采用不同的发送策略;每个域根据当前未发送量、队列数量来自动调节线程数,以采取不同的域;根据成功率采用不同的服务IP;以及根据错误结果类型来采用不同的处理。本发明的邮件发送策略保证了重要邮件的及时性以及其他邮件的邮件发送量和成功率。
下面结合附图对本申请优选的实现方式进行详细说明。
图1是根据本发明的实施例的基于内容来自动调节邮件发送策略的系统100的体系架构图。如图1所示,在本发明的实施例中,所述系统100包括邮件生成模块101、邮件存储模块103、添加推荐商品模块105、邮件发送中心107和邮件服务提供商109。
邮件生成模块101用于生成各种不同的邮件。所生成的邮件例如具有不同的内容、不同的优先级或不同的域名。该邮件生成模块101主要是通过用户在电商网站的各种行为,诸如注册、找回密码、下单、支付等,产生不同的邮件对应不同的邮件模板,生成对应的邮件。每种模板要求的及时性等都不同。
邮件存储模块103用于提供任务和邮件的持久化存储,并提供结构化的查询机制。例如,邮件存储模块103存储由邮件生成模块101生成的各种内容域名的邮件。所述域名例如是qq.com、163.com、126.com、yahoo.cn或jd.com等等。
添加推荐商品模块105用于根据用户购买的商品和历史记录等来向每封邮件添加相关的商品并存储到邮件存储模块103中,以帮助用户了解自己可能还会需要的商品,从而完成邮件内容的准备。例如,添加推荐商品模块105可以通过定期扫描邮件存储模块103来了解用户购买的商品和历史记录。
邮件发送中心107是所述系统100的核心组成部分。邮件发送中心107由取数据模块111、初始化配置调节模块113、邮件发送模块115、邮件调节模块117和邮件分析模块119等若干个部分组成。
如图所示,诸如邮件生成模块101、添加推荐商品模块105、邮件发送中心107的各个模块所述的各个节点(例如,图1中的邮件生成节点(s1、s2、……)、添加推荐商品节点s1、s2以及邮件发送节点s1、s2、s3……sn)就是在不同ip的上部署的模块应用,多节点以及不同网段的部署是为了防止只有一个节点取到邮件数据(单点情况),在单点的情况下,如果一个应用节点挂掉,则导致应用不能用。而且,其中能够控制不重要的添加推荐商品模块105发生意外故障,如果发生故障,则邮件发送中心107能够各个节点适应(最近多少分钟没有添加推荐),不等待添加商品,直接发送邮件。
根据本发明的实施例,邮件发送中心107通过在启动时根据自身发送节点的IP来获取到相应的初始化默认配置。所述IP大致分为三类,即,固定发送优先级高的IP类、发送内容邮件量大的IP类和普通的IP类。当扫描到存储单元的优先级高的邮件量多达到一定的阀值时,普通IP类的节点规则就会自动切换到发送优先级高的规则上。当存储单元的优先级高的邮件量降下去的时候,再切换回来。当扫描到存储单元中存在快过期的邮件时,例如,当距离邮件过期时间短于预定阈值时,普通IP类与量多的IP类也会自动切换规则以帮助发送快过期的邮件。另外,普通IP类中也还有更细的规则,例如,为了防止单点(只有一个节点取到邮件数据)以及太多节点取到同一条数据浪费资源,根据ID取模(每封入库的邮件的唯一标识)、入库时间、每个节点取数邮件等,设置取数的条件;以及当相应的等待队列满了时,规则也会自动调节以节约资源。另外,规则的调整替代地也可以人工干预,以达到灵活性。取数据的规则还包括当查询到添加推荐商品没有工作时,也会自动调整规则,以达到解耦。
取数据模块111用于根据取数据规则将邮件内容从邮件存储模块103提取到节点。例如,取数据模块111通过自动调节取数据规则,然后根据调节后的取数据规则来扫描邮件以将邮件存到发送队列中。所述取数据规则的考虑因素包括域的未发送量、发送状态、先进先出、邮件优先级、邮件的时效性等中的至少一个。所述根据域的未发送量来自动调节取数据规则是指当未发送邮件内容优先级高于预定阈值时,其他发送节点自动切换以帮忙发送。所述根据发送状态来自动调节取数据规则是指当某些域名受限制时,或者发送太慢而导致队列还有大部分未发送时,暂停提取这类域名的邮件。所述根据先进先出来自动调节取数据规则是指根据邮件进入存储单元的先后顺序来取出邮件。所述根据邮件的时效性规则来自动调节取数据规则是指当未发送的邮件快过期时自动优先提取快过期的邮件。所述发送队列可以是相应的域名队列或限制队列。
具体地,取数据模块111首先判断邮件是哪个域名的,该域名是否被限制,并且加入到相应的域名等待发送队列。每个常用的邮件域名,都在初始化的时候默认设置一个等待队列,该队列可以通过手动进行调节,例如对于国内用户网易、QQ邮箱占据多数,相应等待队列也就更大。
初始化配置调节模块113负责当应用节点启动时初始化配置的信息,如配置的的每个域名对应的发送线程数、对应的队列大小、是否采用直连发送、一次发送的数量、发送间隔,黑名单数据,取数的条件(每次取数的多少、没有数据中间停顿的时间、取哪些域名、哪些级别的数据等),邮件对应的模板信息,自身节点对应的主机等。
邮件发送模块115根据每种域名扫描相应的队列,根据发送规则进行发送,如果某些域名被限制了就会由限制的线程来发送,然后把发送的情况反馈到邮件分析模块。所述发送规则的考虑因素包括自动调节线程数、自动调节单位时间发送的邮件数量、自动调节邮件发送速度、自动选择IP建立连接中的至少一个。所述自动调节线程数规则是指当查询到某类域名未发送邮件太多时,就会增加线程数;而当查询到某类域名的未发送邮件太少时,就会减少线程。所述自动调节单位时间发送的邮件数量是指当根据需要自动增加或减少单位时间发送的邮件数量。所述自动调节邮件发送速度是指根据需要自动增加或减少邮件发送速度。所述自动选择IP是根据权重来进行统计,所述权重基于建立连接时间、成功与失败次数、发送状态(例如,成功或失败),例如,当建立连接失败次数与失败次数过多时,则选择这个IP的概率就比较小。
优选地,邮件发送模块115可以定期地扫描相应的队列和默认队列或限制队列,取出邮件,通过SMTP(简单邮件发送协议)将邮件发送到邮件服务提供商,并将发送的情况反馈到邮件分析模块119。所述邮件服务提供商例如是腾讯、网易、谷歌、京东等。
邮件调节模块117根据未发送的域名量、统计域名的每天的量来调整域名的发送线程数与发送队列、发送速度和IP选择等。当邮件发送模块115扫描到相应的队列有数据时,就触发发送进行发送,然后根据邮件分析模块119反馈回来的数据来确定是否调整发送速度、以及采用哪个IP进行连接建立和/或发送,并且将建立连接和发送失败的情况传递给邮件分析模块119。
邮件分析模块119用于发送情况采样样本汇总、分析,并将分析结果反馈给取数据模块111、邮件发送模块115,从而改变取数据规则与发送规则。例如,邮件分析模块119根据传递过来的情况,统计分析出每个域名每分钟的发送数量,是否达到预定的阈值。如果确定已经达到或超过预定的阈值,则减少发送速度;根据建立连接和发送的成功与失败次数来统计分析出对应的域名IP、每个IP成功的概率大小,然后赋予权重,当下次选择IP时,就可以选择到成功率高的IP,以改善发送、节约资源;以及根据发送失败来对邮件服务提供商返回的错误进行统计,以决定是否还需要重试、重试是马上进行还是等待下次以及重试是否被限制,并记录新的错误类型,以便于归类,增加新的策略。
例如,所述错误的类型包括邮件不存在类型、发送限制类型、I/O错误类型以及其他错误类型等。特别地,邮件不存在类型可能是由于邮箱地址错误而导致发送错误,在这种情况下,由于通过域名解析之后无法找到相应的主机或服务器,所以邮件是无法发送出去的,因此不需要进行重试。发送限制类型可能是由于邮件属性不符合收件方个人设置或收信服务器的限制而导致发送错误,例如收件方邮箱空间已满、邮件大小超出收信服务器限制、收件方设置的邮件过滤功能,在这种情况下,由于存在成功发送的可能性,因此需要尝试重试并设置重试次数。I/O错误类型可能是由于硬件或网络故障而导致发送错误,例如发信服务器、收信服务器、域名解析服务器出现故障或网络连接不稳定等,在这种情况下,可以进行重试以在排除故障之后成功发送,并设置重试次数。优选地,所述重试可以间隔固定的时间间隔,也可以间隔递增的时间间隔以节约资源。
如图1所示,根据本发明的实施例,邮件发送中心107内部采用了生产者、消费者的发送结构。邮件分析模块119通过统计分析发送到邮件服务的情况,动态调整取数据的规则以及发送的规则,以提高取数据模块111取得的邮件内容经由发送模块115发出去的成功率与及时性,以及节约资源。
图2是根据本发明的实施例的邮件发送中心端的邮件生产者的流程图200。
如图2所示,在步骤S201,邮件发送中心107初始化配置,以取得相应的规则。所述初始化包括根据节点IP自动分类;域名队列、线程默认初始化;以及节点是否启动监控、自动调节线程等。所述相应的规则包括默认规则,所述默认规则基于节点自身IP属于上述三类中的哪一类,例如包括内容优先级高的、内容量大的、其它普通类等等。
在步骤S203,取数据模块111根据不同的规则取数据。所述不同的规则例如是自动调节后的规则,包括排除限制了域名(发送过程中根据成功率等因素限制、人为添加限制)、队列满的域名、取量多的、取优先级高的,取快过期的、入库时间顺序等等。
在步骤S205,查询数据库(DB),取得数据,例如,根据初始化配置模块103初始化的条件邮件id取模、数量、优先级等条件取邮件数据。然后,在步骤S207,判断所取得的数据是否为限制域名。如果是,则在步骤S209加入到限制域名队列,以等待专门的线程发送。如果不是,则在步骤S211加入到对应的域名队列。如果不存在对应的域名队,则加入到默认队列。
图3是根据本发明的实施例的邮件发送中心端的邮件消费者的流程图300。
如图3所示,在步骤S301,根据初始化配置模块103初始化时域名对应着相应的发送线程与存储队列,然后发送线程扫描对应的存储队列取数发送,所述的发送线程例如为专门的限制域名线程、域名对应线程。然后,在步骤S303,判断是否从相应的发送队列取到数据。如果已经从相应的发送队列取到数据,则该流程进行到步骤S309。如果没有取到数据,则在步骤S305从其他队列里面取数据,例如可以从默认队列或限制队列里面取数据,然后在步骤S307判断是否从其他队列取到数据。如果在步骤S307没有从其他队列取到数据,则该流程返回步骤S301,重复以上步骤直到取出数据。如果在步骤S307已经从其他队列取到数据,则该流程进行到步骤S309。
优选地,步骤S301进一步包括判断域名是否是批量发送。如果域名是批量发送,则以批量方式从相应的发送队列取得数据。如果域名不是批量发送,则以逐条提取的方式从相应的发送队列取得数据。
在步骤S309,判断该域名邮件是采用IP发送还是域名发送。如果是采用IP发送,则在步骤S311从存储的域名对应的ip队列中选出相应的目标IP以在步骤S317中建立直接连接。如果是采用域名发送,则在步骤S315采用域名以在步骤S317中直接建立连接。优选地,步骤S311进一步包括在步骤S313中根据成功率、连接失败率来取得与域名相对应的IP。优选地,在步骤S317建立连接时开始记录连接时间。
可选地,在步骤S317中建立连接之后,判断是否需要调节发送速度。如果需要,则首先调节发送速度然后再在步骤S319中进行发送。如果不需要,则直接在步骤S319中进行发送。然后,在步骤S319之后,在步骤S321中判断发送是否成功。如果发送成功,则在步骤S323,传递邮件分析模块119的记录,并更新成功状态、增加成功记录,从而该流程结束。优选地,在步骤S323记录连接时长、发送状态(例如,成功的、出错的等)以便进行统计分析。
如果在步骤S321中判断发送不成功,则在步骤S325根据返回的错误来判断错误属于哪种类型。所述错误的类型例如包括邮件不存在类型、发送限制类型、I/O错误类型以及其它错误类型等等。如果在步骤S325判断所述错误的类型属于邮件不存在类型,则该流程进入步骤S327。如果在步骤S325判断所述错误的类型属于发送限制类型,则该流程进入步骤S331。如果在步骤S325判断所述错误的类型属于I/O错误类型,则该流程进入步骤S337。如果在步骤S325判断所述错误的类型属于其它错误类型,则该流程进入步骤S343。
在流程进入步骤S327之后,由于错误属于邮件不存在类型,所以不需要重试,从而在步骤S329直接更新记录失败,加入黑名单,并向邮件分析模块119增加成功记录,从而该流程结束。在步骤S329中的出错的、成功的记录有助于分析统计。
在流程进入步骤S331之后,由于错误属于发送限制类型,所以在步骤S333将邮件传递给邮件分析模块119,并且标记域名内容。接着,在步骤S335中,邮件分析模块反馈回其它模块,通知取数据模块111停止提取该域名下的该内容的邮件,进行发送限制,并更新回库等待下一次发送记录失败。重复以上操作达到最大重试次数时,则在步骤S341更新为失败,并增加失败记录。在步骤S341中的出错的、成功的记录有助于分析统计。
在流程进入步骤S337之后,由于错误属于I/O错误类型,所以在步骤S339进行发送重试,即,马上重用连接以再发送一次,流程返回到步骤S319。另外,当重试达到最大重试次数时,该流程进入步骤S341。
在流程进入步骤S343之后,由于错误属于其它错误类型,所以该流程进行到步骤S335,更新回库,记录错误类型,并等待重试直到达到最大重试次数。如果重试达到最大重试次数,则该流程进入步骤S341。
当然在实际应用中,应当可以被人工干预,可以临时暂停或取消等等,上述实施例中描述的方法提供一个灵活的发送,如可以新增加一个域名,需要单独的线程与队列;以及手动调整某个域名的线程数与队列大小;手动调整最大重试次数;调整每分钟限制的发送数量;暂停某个域名的发送;把某个域名设为直连IP发送;把某个域名设为批量发送;以及设置批量发送的数量;设置每次取数据的间隔;限制域名的发送速度;手动取消某域名下的某种邮件或者增加某个域名下的某种邮件的发送限制等。
另外,由于邮件服务提供商提供服务很多,具有很多不确定的因素,如有不同网络环境下的服务IP,也有国外的邮件服务提供商,网络速率抖动很大且各邮件服务提供商对瞬时发送速率的各种不同限制,发送节点的速率往往无法有效保证。基于上述流程,为了进一步提高系统的邮件发送能力和发送成功率,发送节点的IP最好也要选择放在不同的网络,不同的机房。而且,如果在网络繁忙的情况下发送电子邮件,则应当适当设置较长的服务器超时值,以便提高邮件发送的成功率。如果采用多台发送服务器组成集群发送,则应当在每个发送链路上进行发送流量均衡分布,以提高资源利用率。
因此,根据本发明的基于内容来自动调节邮件发送策略具备以下优点:当邮件量大时,保证重要邮件的及时性,例如,在促销期间邮件量多的时候,某些于堵住影响其他域名;采用错误重试并且根据类型不同而处理方法不同,从而减少资源浪费;根据每个服务商的不同IP的成功率,采用不同的命中率,从而增加成功率;以及便于跟踪且查询特定邮件是否发送成功和失败原因。
综上所述,采用本实施例中记载的技术方案实现了基于内容自动调节邮件发送策略,该策略可以有效的满足邮件随着网站业务订单量的增加、邮件量随之增加、优先级高的邮件发送的及时需求,同时其它邮件也能够发送成功,而且确保了在邮件服务提供商限定的范围内的发送量和成功率。
上述实施例仅是本发明的优选实施例,并不用于限制本发明。对本领域技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,可以对本发明的实施例进行各种修改和改变。因此,本发明意在涵盖落入如权利要求所限定的本发明的范围之内的所有这样的修改或变型。
Claims (18)
1.一种用于基于内容自动调节邮件发送策略的方法,所述方法包括:
由邮件生成模块生成邮件;
由邮件存储模块存储所生成的邮件;
由取数据模块通过自动调节取数据规则从所述邮件存储模块取出邮件并将取出的邮件放入发送队列中;
由邮件发送模块根据发送规则将所述发送队列中的邮件发送到服务提供商;以及
由邮件分析模块分析所述发送的结果并将分析结果反馈给所述取数据模块和所述邮件发送模块,以基于所述分析结果来改变所述取数据规则和所述发送规则;
所述生成的步骤进一步包括:由邮件添加推荐商品模块根据用户购买的商品以及历史记录,将相关的商品添加到所生成的邮件中。
2.根据权利要求1所述的方法,其中,所述将取出的邮件放入发送队列的步骤进一步包括:
判断所述邮件的域名是否是限制域名;
如果所述邮件是限制域名,则将所述邮件放入限制域队列中;以及
如果所述邮件不是限制域名,则将所述邮件放入相应的域名队列中。
3.根据权利要求1所述的方法,其中,所述根据发送规则将所述发送队列中的邮件发送到服务提供商的步骤进一步包括:
判断所述邮件的域名是否是批量发送;
如果所述域名是批量发送,则从所述发送队列中批量取出数据;以及
如果所述域名不是批量发送,则从所述发送队列中逐条取出数据。
4.根据权利要求2所述的方法,进一步包括:
判断是否从所述相应的域名队列中取到数据;
如果没有取到所述数据,则从其他队列取出数据;以及
判断是否从所述其他队列取到数据。
5.根据权利要求1或3所述的方法,其中,所述根据发送规则将所述发送队列中的邮件发送到服务提供商的步骤进一步包括:
判断所述邮件是否采用IP发送;
如果所述邮件采用IP发送,则基于权重来选择IP以直接建立连接进行发送;
如果所述邮件不是采用IP发送,则采用域名直接建立连接进行发送。
6.根据权利要求1所述的方法,其中,所述分析所述发送的结果的步骤进一步包括:
判断所述发送是否成功;以及
如果没有成功,则判断发送错误的类型。
7.根据权利要求1所述的方法,其中,所述取数据规则的考虑因素包括域的未发送量、发送状态、先进先出、邮件优先级、邮件的时效性中的至少一个。
8.根据权利要求1所述的方法,其中,所述发送规则的考虑因素包括自动调节线程数、自动调节单位时间发送的邮件数量、自动调节邮件发送速度、自动选择IP建立连接中的至少一个。
9.根据权利要求6所述的方法,其中,所述发送错误的类型包括邮件不存在类型、发送限制类型、I/O错误类型以及其他错误类型。
10.一种用于基于内容自动调节邮件发送策略的系统,所述系统包括:
邮件生成模块,所述邮件生成模块用于生成邮件;
邮件存储模块,所述邮件存储模块用于存储所生成的邮件;
取数据模块,所述取数据模块用于通过自动调节取数据规则从所述邮件存储模块取出邮件并将取出的邮件放入发送队列中;
邮件发送模块,所述邮件发送模块用于根据发送规则将所述发送队列中的邮件发送到服务提供商;以及
邮件分析模块,所述邮件分析模块用于分析所述发送的结果并将分析结果反馈给所述取数据模块和所述邮件发送模块,以基于所述分析结果来改变所述取数据规则和所述发送规则;
邮件添加推荐商品模块,所述邮件添加推荐商品模块用于根据用户购买的商品以及历史记录,将相关的商品添加到所生成的邮件中。
11.根据权利要求10所述的系统,其中,所述取数据模块进一步用于:
判断所述邮件的域名是否是限制域名;
如果所述邮件是限制域名,则将所述邮件放入限制域队列中;以及
如果所述邮件不是限制域名,则将所述邮件放入相应的域名队列中。
12.根据权利要求10所述的系统,其中,所述邮件发送模块进一步用于:
判断所述邮件的域名是否是批量发送;
如果所述域名是批量发送,则从所述发送队列中批量取出数据;以及
如果所述域名不是批量发送,则从所述发送队列中逐条取出数据。
13.根据权利要求11所述的系统,其中,所述邮件发送模块进一步用于:
判断是否从所述相应的域名队列中取到数据;
如果没有取到所述数据,则从其他队列取出数据;以及
判断是否从所述其他队列取到数据。
14.根据权利要求10或12所述的系统,其中,所述邮件发送模块进一步用于:
判断所述邮件是否采用IP发送;
如果所述邮件采用IP发送,则基于权重来选择IP以直接建立连接进行发送;
如果所述邮件不是采用IP发送,则采用域名直接建立连接进行发送。
15.根据权利要求10所述的系统,其中,所述邮件分析模块进一步用于:
判断所述发送是否成功;以及
如果没有成功,则判断发送错误的类型。
16.根据权利要求10所述的系统,其中,所述取数据规则的考虑因素包括域的未发送量、发送状态、先进先出、邮件优先级、邮件的时效性中的至少一个。
17.根据权利要求10所述的系统,其中,所述发送规则的考虑因素包括自动调节线程数、自动调节单位时间发送的邮件数量、自动调节邮件发送速度、自动选择IP建立连接中的至少一个。
18.根据权利要求15所述的系统,其中,所述发送错误的类型包括邮件不存在类型、发送限制类型、I/O错误类型以及其他错误类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310412080.7A CN103607339B (zh) | 2013-09-11 | 2013-09-11 | 基于内容自动调节邮件发送策略的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310412080.7A CN103607339B (zh) | 2013-09-11 | 2013-09-11 | 基于内容自动调节邮件发送策略的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103607339A CN103607339A (zh) | 2014-02-26 |
CN103607339B true CN103607339B (zh) | 2016-08-17 |
Family
ID=50125539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310412080.7A Active CN103607339B (zh) | 2013-09-11 | 2013-09-11 | 基于内容自动调节邮件发送策略的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103607339B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683581A (zh) * | 2018-04-10 | 2018-10-19 | 平安科技(深圳)有限公司 | 邮件触发方法及装置、电子设备和计算机可读存储介质 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104579922A (zh) * | 2014-12-26 | 2015-04-29 | 乐视网信息技术(北京)股份有限公司 | 一种邮件发送方法及装置 |
CN106488416B (zh) * | 2015-08-26 | 2020-02-07 | 中国联合网络通信集团有限公司 | 行业短信发送方法与装置 |
CN105429733B (zh) * | 2015-11-27 | 2019-01-01 | 北京奇虎科技有限公司 | 一种信息调度发送方法和装置 |
CN105263128B (zh) * | 2015-11-27 | 2019-08-30 | 北京奇虎科技有限公司 | 一种批量发送短信的方法和装置 |
CN106779702A (zh) * | 2016-11-28 | 2017-05-31 | 努比亚技术有限公司 | 支付方法及支付系统 |
CN108449428A (zh) * | 2018-04-23 | 2018-08-24 | 深圳市分期乐网络科技有限公司 | 一种网络连接方法、装置、服务器和存储介质 |
CN108880994B (zh) * | 2018-07-02 | 2021-05-25 | 网宿科技股份有限公司 | 一种重发邮件的方法和装置 |
CN109639471A (zh) * | 2018-12-03 | 2019-04-16 | 郑州云海信息技术有限公司 | 一种自动发送电子邮件的方法及系统 |
CN110852051B (zh) * | 2019-10-15 | 2023-10-27 | 上海腾道信息技术有限公司 | 一种邮件模板优化的方法及生成系统 |
CN110995542B (zh) * | 2019-12-16 | 2022-04-22 | 金蝶智慧科技(深圳)有限公司 | 一种网络状态检测方法、系统及相关设备 |
CN111464426B (zh) * | 2020-03-23 | 2022-04-26 | 论客科技(广州)有限公司 | 一种邮件投递策略自动调整方法、装置及存储介质 |
CN115544034A (zh) * | 2022-09-15 | 2022-12-30 | 中国人民财产保险股份有限公司 | 一种数据一致性方法及业务系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924694A (zh) * | 2009-06-10 | 2010-12-22 | 株式会社日立制作所 | 邮件服务器系统及拥塞控制方法 |
CN102546466A (zh) * | 2010-12-24 | 2012-07-04 | 佳能It解决方案股份有限公司 | 信息处理装置、信息处理方法、以及计算机程序 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219148B2 (en) * | 2003-03-03 | 2007-05-15 | Microsoft Corporation | Feedback loop for spam prevention |
-
2013
- 2013-09-11 CN CN201310412080.7A patent/CN103607339B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924694A (zh) * | 2009-06-10 | 2010-12-22 | 株式会社日立制作所 | 邮件服务器系统及拥塞控制方法 |
CN102546466A (zh) * | 2010-12-24 | 2012-07-04 | 佳能It解决方案股份有限公司 | 信息处理装置、信息处理方法、以及计算机程序 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108683581A (zh) * | 2018-04-10 | 2018-10-19 | 平安科技(深圳)有限公司 | 邮件触发方法及装置、电子设备和计算机可读存储介质 |
CN108683581B (zh) * | 2018-04-10 | 2020-11-20 | 平安科技(深圳)有限公司 | 邮件触发方法及装置、电子设备和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103607339A (zh) | 2014-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103607339B (zh) | 基于内容自动调节邮件发送策略的方法和系统 | |
EP3669526B1 (en) | Managing subscriptions for event notifications | |
US20180219830A1 (en) | Introducing a new message source into an electronic message delivery environment | |
EP1597645B1 (en) | Adaptive junk message filtering system | |
RU2600102C2 (ru) | Сортировка обмена электронной информацией | |
AU2004216772B2 (en) | Feedback loop for spam prevention | |
KR20140059811A (ko) | 적시의 이벤트 데이터 배포를 위한 시장 | |
CN102710548A (zh) | 跟踪电子邮件各收件人对邮件进行的操作的方法与系统 | |
CN108139920A (zh) | 在动态条件及变约束下用于基于信息中心联网(icn)的代理服务器管理的方法、设备及系统 | |
JP5121828B2 (ja) | 電子メール処理装置、電子メール処理方法、電子メール処理プログラムおよび電子メール処理システム | |
CN106656731A (zh) | 一种edm邮件发送方法和装置 | |
WO2009073320A1 (en) | Systems, methods and computer program products for the delivery of email text messages to an iptv display device | |
JP4637628B2 (ja) | 情報配信装置及び情報配信方法 | |
CN103517225A (zh) | 彩信重试方法及装置 | |
US20080061934A1 (en) | High capacity campaign system | |
CN109756567A (zh) | 一种跨域的任务调度断点续传方法 | |
CN103384219A (zh) | 电子邮件发送方法及系统 | |
US9473668B2 (en) | Distributed storage and processing of mail image data | |
JP2003162485A (ja) | 電子メールによる特定文書の閲覧管理方法及び電子メールによる特定文書の閲覧管理プログラムを記録した記録媒体 | |
CN102739556A (zh) | 基于邮件系统的组网系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |