EDM的成本在于IP
一般架构都是采用多层代理发送
– A代理中继
主控 – 队列 – B代理中继
-C代理中继
中继是提供转发服务 一般配多IP
维护一个正常的队列 设置客户优先级
这个最主要就是处理好发送频率和服务器接收的上限
对方服务器接收的上限 是可以算出来的 一次发N封 对方开始拒收的时候 就代表上限了
例如Gmail是每IP每小时100封 QQmail是每IP每小时100封
比如A客户提交了2K封Email的发送请求
1. 先审核内容 是否符合规定 通常是使用Spam设置规则 进行预检测
2. 通过则放行 加入队列,如果邮件内容有问题 锁定,退回修改
3. 放行后 在队列排序 把要群发的邮件地址进行域名后缀分类
4. 调用中继服务器列表 查询发送记录 如果在1小时内 已经发送超100封指定到Gmail 则使用下一个IP继续投递
5. 接收邮箱返回的数据, 整理后存档 生成统计数据
6. 返回给客户发送结果摘要
需要解决的就是队列的调度 子中继服务器的维护
真正设计起来 还是很复杂的东西
算法要求比较多就是了 如果不太熟悉Mail的协议 架构起来有难度