美文网首页移动应用Bmob后端云-让移动开发更简单
移动应用后端开发经验3-短信,邮件,推送服务

移动应用后端开发经验3-短信,邮件,推送服务

作者: Bmober | 来源:发表于2015-04-21 11:21 被阅读558次

    在app的后端设计中,免不了消息的推送,短信,邮件等服务,下面就个人的开发经验谈谈这方面。

    (1)最重要的是,各种推送一定要放在队列系统中处理,不然会严重影响api的响应时间。

    (2)短信方面

    以前我们是用亿美软通的短信服务,但在三大运营商收紧了短信服务后,亿美软通的短信延迟非常厉害,后来我们找到了这家短信服务商 http://luosimao.com,这家发送短信到联通,电信,移动手机很快就到了(直到2014.01.24)。

    如果发送到移动的短信还没有改善,最后的后备方案:发送到联通,电信的短信使用国内的服务商,发送到移动的短信就只能使用国外的短信服务商(国外发短信到移动手机3毛一条,好贵啊!!!)

    注:现在sharesdk提供了免费的短信验证码服务(http://mob.com/sms),试运营期间为开发者提供每个App每天10000条免费短信验证。

    (3)邮件

    在一开始时使用服务器自身的postfix发送邮件的,但我们发现邮件被很多邮件服务商当成垃圾邮件了,而且没有重发机制,不能保证邮件的准确到达。

    后来查了一下各大网站,发现知乎和github 都是使用http://www.mailgun.com/的邮件服务,看了一下文档,价格很公道,而且每月有1万封的免费邮件额度,非常适合创业型的公司。

    (4)推送服务

    在这方面,我考虑的重点是:在创业初期,能用第三方就尽可能多使用第三方的服务,自身只处理业务逻辑本身,快速的开发产品。

    android篇:

    android方面,我们使用过3种消息推送机制:

    1.极光推送,现在放弃了。我们使用的过程中,发现极光的机制有点古怪,一般来说,一个app在极光服务器中是固定一个id,但在极光中是通过广播来通知app这个id,而且在文档中居然说明这个id会不定期变化。

    2.openfire服务器。app通过连接openfire服务器来获取各种消息,但是openfire有个机制,当app连接openfire后空闲就自动断开,没法保持连接的的稳定性,而修改这个openfire的机制成本太高了,后来也放弃使用openfire。

    3.百度推送。已现在使用一段时间的情况来说,推送及时快速,挺满意百度的推送服务。

    iphone篇:

    apns是iphone推送的不二选择。但如果自身开发apns的服务,会遇到无效token而需要重发,这样需要维护一个队列并建立重发机制,考虑到项目的时间和研发成本,最后也是使用了百度推送的服务。

    当用户在iphone上卸载了app后,device token会失效,所以应该定期访问苹果的feedback服务器,把无效的token去掉。

    本人做了3年app相关的系统架构,api设计,先后在3个创业公司中工作,经历过手机网页端,android客户端,iphone客户端,现就职于app云后端平台bmob(想了解bmob点击这里)。其中的乐与苦,得与失,仰首问天有谁知?我觉得是时候来个总结,把相关的技术和心得记录下来。

    [文章作者]曾健生

    [作者邮箱]h6k65@126.com

    [作者QQ]190678908

    [新浪微博] @newjueqi

    [公司网址]www.bmob.cn

    相关文章

      网友评论

        本文标题:移动应用后端开发经验3-短信,邮件,推送服务

        本文链接:https://www.haomeiwen.com/subject/xjlufttx.html