java springboot activemq 邮件短信微服务,解决国际化服务的国内外兼容性问题,含各服务商调研情况

java springboot activemq 邮件短信微服务,解决国际化服务的国内外兼容性问题,含各服务商调研情况

java springboot activemq 邮件短信微服务,解决国际化服务的国内外兼容性问题,含各服务商调研情况

邮件短信微服务

spring boot 微服务

接收json格式参数

验证参数合法化

放入队列

返回json

内网访问,IP白名单限制

activemq消息队列

独立部署到docker里

邮件发送

从activeMQ里取待发送邮件

根据邮箱类型选择对应服务商接口发送

mysubmail

主账号邮件验证码类无限额(需要找客服技术申请开通)

子账号营销邮件

TLS加密需要找技术加上

sendcloud

sendgril

amazon SES

每天5万,每秒14封

国内邮箱白名单配置(foxmail,qq,163,126,yeah,sina,sohu,189,139)

失败重发5次丢弃

暂停5秒再放回队列

放回队列需要切换不同运营商发送才能保证比较高的成功率,失败后放回队列指定其他运营商改成下面顺序:submail->sendclound->amazonses->sendgrid->submail
需要保证各个运营商有比较充足的余额效果才比较好 验证码实时性比到达率重要,超过2分钟收不到就没意义了 失败后直接放回队列里重发,邮件少的话马上就给取出来重发了,短时间内连续重发可能会被邮件服务器判断为垃圾邮件拒绝 根据邮件服务器返回状态作出相应处理 推广邮件用户退订,记录后不继续推广 短信发送 从activeMQ里取待发送短信 没有指定运营商,默认+86用submail,其他用twilio,指定submail的再判断国内国际的分开发送 根据号码类型选择对应服务商接口发送 mysubmail 1: message/send 接口,优点:方便、快速对接使用,免模板,可直接提交任意内容(需要符合短信发送规范,短信签名前置),缺点:并发效率不高,适用于并发小,内容变动或模板变动较多的场景(并发效率低指高于每秒1000的并发,低于这个并发需求请无视) 2:message/xsend 接口,优点:高稳定性,低延迟,高并发,适用验证码类要求低延迟,高请求效率的场景,缺点:接入时需要提前创建模板,并指定模板ID 可以先使用send接口发送后自动创建模版,后面再换成自动生成的模版用xsend来发送 需要判断有+86的走国内短信API,其他国家代码走国际短信API
就这2种判断就可以了,国际短信API可以发送除中国以外的235个国家的短信
国外的是区号必须加的,不然无法判断国家
国内的不能带上+86,否则会报错,需要去掉+86
先加一个国内号码的合法性验证,国外的后续再慢慢加上正则表达式规则 国际短信 不强制传【】,国内是运营商强制要求的,必须传【】而且【xxx】需要放在开头那里 sendcloud 必须先创建签名、模版,而且最多创建5个,需要传签名,、模版ID才能发送,已决定放弃 twilio sms 发送到国内手机号到达率比较低 amazon sms(待开通) 阿里短信(待申请) 失败重发5次丢弃 失败的改成另外一个运营商再放到队列里 根据短信服务器返回状态作出相应处理

邮件服务调研:

java springboot activemq 邮件短信微服务,解决国际化服务的国内外兼容性问题,含各服务商调研情况

邮件服务

需要解决问题

QQ,foxmail收不到sendgril邮件

腾讯邮箱白名单服务要求很严格,区块链的申请不了

区分国内外邮箱进行分别处理

对邮件进行分类处理,重要的验证码、订单通知用一个域名多个帐号,广告推送的用另外一个域名多个帐号

对邮件发送进行轻量级队列化,失败后放回队列重发

解决方案

注册域名备案

aax-pro.com aax-pro.cn 都可以注册,两个一起一年84元
aax-intl.com 也可以,一年58元 域名备案后使用网易企业邮箱服务 使用sendcloud作为备用 使用mysubmail作为备用 使用Gmail企业邮箱发送 放到aws或香港同事电脑上测试 火币发送邮件 火币至少用了6个不一样的邮箱帐号发送不同类型的通知 订单、重置密码:noreply@mail.huobi.pro
安全验证:noreply@mail.huobipro.com
邮箱验证:service2@huobi.com
推广服务通知:support3@huobi.com,service3@huobi.com,vip@huobi.com 网易企业邮箱 每个账号一天最多发1000封,发送频率每15分钟不得超过500封 单次群发不宜超过200个收件人,100个收件人效果最佳 可以使用多个邮箱发送,用户数可以随时增加的 我想购买 200个用户,标准价:44400元/年; 优惠价:29600元/年
我想购买 100个用户,标准价:22500元/年; 优惠价:15000元/年
我想购买 10个用户,标准价:2925元/年; 优惠价:1950元/年
我想购买 20个用户,标准价:5550元/年; 优惠价:3700元/年
https://qiye.163.com/entry/buy-price.htm 国家工信部要求,邮箱域名需要进行备案
如果不备案,不排除域名提供商会响应工信部要求将没有备案的域名进行清理,一般主要体现为清理域名解析。
若没了解析,则会影响到您的邮箱正常收取外域邮件,以及无法正常登录mail.域名。
海外注册用户建议联系国内域名服务商购买域名空间进行备案。 腾讯企业邮箱 https://exmail.qq.com 免费版,50人帐号上限
100个用户,标准价:14000元/年,免费赠送自选域名 出错原因:该服务器IP的发信频率大幅度超过QQ邮箱限制。
QQ邮箱对来自相同IP的外部发信服务器有一定的频率限制:
1、超过每分钟发信量限制,此IP地址被禁止发信若干分钟。
2、超过每小时发信量限制,此IP地址被禁止发信若干小时。
3、超过每日发信量限制,此IP地址本日内禁止再发信。
4、以上频率限制数值属于QQ邮箱保密数据,恕不公开。 国内代发邮件服务 mysubmail SUBMAIL_赛邮云通信_短信平台_邮件平台_语音验证码_国际短信
https://www.mysubmail.com/ 邮件分行业短信通道,营销通道两种,收费和到达率不一样
邮件费用比sendcloud贵点,短信费用比sendcloud便宜 50万封以上的邮件资源包均享有 6 个月的独立 IP 服务 10万封¥720单价7.2元/千封
50万封¥3000单价6元/千封
200万封¥11000单价5.5元/千封
500万封¥22500单价4.5元/千封 有SUBHOOK邮件和短信 API 事件推送通知接口 SMTP - 开发者文档 - SUBMAIL - 赛邮云通信
https://www.mysubmail.com/chs/documents/developer/AJhT63 事务类短信资源包:1万条390元,5万条1850元,10万条3500元,300万条90000元(0.03每条)
运营类短信资源包:1万条420元,5万条2000元,10万条3800元,300万条99000元(0.033每条)
国际短信:美国0.055元/条,英国0.275元/条,日本0.334元/条,法国0.371元/条,澳大利亚0.269元/条 Sendcloud 搜狐集团旗下子公司,2014年从搜狐集团中独立,专注于解决企业触达用户的需求,为企业提供邮件、短信、语音通讯等SaaS服务
https://www.sendcloud.net 保证其硬退比例不超过单次发送总量的5% SendCloud 为你多样化。策略化的发送方案,让发信频率稳定可控。提供的DKIM签名、SPF、白名单确认等措施,更让邮件高效入箱。 月发送量10000封以内¥59/每月
月发送量10001-50000封部分¥5.6/千封
月发送量50001-100000封部分¥5.3/千封
月发送量100001-200000封部分¥5/千封
月发送量200000封以上¥4/千封 企业账户初始发信额度每天3000 正式认证是需要审核网站信息的,上线了才能使用 域名跟客服确定了可以不用备案的 htt http://www.magicwinmail.com/register.php 标准版 永久使用、标准功能、含一年的技术服务和升级; 不限邮箱数许可标准版 12000.00 白金版 永久使用、完备功能、含永久的技术服务和升级; 不限邮箱数许可白金版 25000.00 Winmail 邮件服务器软件 :: 版本功能区别
http://www.magicwinmail.com/edition.php 华美科技,域名需自备不提供域名 只提供软件和技术服务,需要自己搭建邮件服务器 国外邮件服务 sendgril gmail amazon SES
上一篇:SpringBoot Docker入门,SpringBoot Docker安装


下一篇:ActiveMQ安装与入门程序 & JMS的消息结构