V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
FiberCore
V2EX  ›  iDev

如何搭建一个可靠的支持百万用户数量级的APNS?

  •  
  •   FiberCore · 2012-07-26 16:35:56 +08:00 · 6583 次点击
    这是一个创建于 4532 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我是做iOS应用开发的,本来使用的urbanairship的服务,确实方便。但是一轮限免活动下来,用户很快要超过百万,这个数量已超过urbanairship提供的免费服务范围,如果继续使用push功能,价格就太贵了,实在用不起。我开始考虑自己搭建APNS,发现已不少方案,因为我有一个虚拟网站空间bluehost,支持php,打算使用类似easyapns这样的代码搭建,现在有个问题?

    我的push虽然不会很频繁,大概每个月发一次吧,但是量很大,这样的话只是虚拟空间数据库+3个php script,能支持好吗?

    如果不能,有什么好的解决方案吗?parse和urbanairship一样,价格也一样,就不在考虑范围了
    11 条回复    1970-01-01 08:00:00 +08:00
    shinyzhu
        1
    shinyzhu  
       2012-07-26 16:42:06 +08:00
    这个:
    /t/17760
    FiberCore
        2
    FiberCore  
    OP
       2012-07-26 16:44:07 +08:00
    @shinyzhu 谢谢阿,已经看过这个了。不过大家认同的还是使用parse等服务,这个确实好,但是一旦超过免费范围,那价格。。。
    soulhacker
        3
    soulhacker  
       2012-07-26 17:10:28 +08:00
    APNS=Apple Push Notification Service,是苹果的服务,你没法搭建的;你说的应该是 provider 的部分吧,我们试过的 parse.compush.io 都不错的,不过要是价格敏感还是自己开发较好,仔细看看 Apple 的文档,做个 provider 不是很难吧。。。
    FiberCore
        4
    FiberCore  
    OP
       2012-07-26 17:33:05 +08:00
    @soulhacker 我不是说难,是说性能
    sykp241095
        5
    sykp241095  
       2012-07-26 17:51:14 +08:00
    dev-python/pyapns
    tokune
        6
    tokune  
       2012-07-26 17:55:41 +08:00
    X...都百万用户了..赚都赚死你啦..要找免费的啊..
    felinx
        7
    felinx  
       2012-07-27 17:32:44 +08:00
    每个月就发次把,一次百万,这个其实量很小啊,一个队列搞定。
    xatest
        8
    xatest  
       2012-07-27 19:08:47 +08:00
    自己搭的话可以考虑用APN Proxy,是SAE的员工做的。
    ewangke
        9
    ewangke  
       2012-07-27 20:36:13 +08:00
    每个月100万条,对于每月群发一次的单个应用一定是够的。urbanairship的计费是只统计active token的,你会保证每个月都有100万的active token么(是的话恭喜你了)?

    如果自己做,性能的事情再说。
    由于你用的是空间,空间的提供商可能不允许你做这个事情。所以至少要有个vps
    provider部分有很多成熟的开源实现,php, python, ruby都有,哪个语言熟用哪个
    此外你还需要有个db来保存token
    如果考虑多语言和时区,db里面还需要保存lang和timezone的信息

    provider都有batch push的功能,所以性能不会像你想象的那么差
    实在性能有问题的话,可以使用一个队列来拆分batch push,分批推送
    assad
        10
    assad  
       2013-08-25 23:17:05 +08:00
    我现在为我们公司做的,是每月360M的量,3.6亿条!
    hjiang
        11
    hjiang  
       2014-04-08 00:18:24 +08:00
    可以用 AVOS Cloud 的 push (http://avoscloud.com),完全免费。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1102 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 18:03 · PVG 02:03 · LAX 10:03 · JFK 13:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.