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

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

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

如果不能,有什么好的解决方案吗?parse和urbanairship一样,价格也一样,就不在考虑范围了
6559 次点击
所在节点    iDev
11 条回复
shinyzhu
2012-07-26 16:42:06 +08:00
这个:
/t/17760
FiberCore
2012-07-26 16:44:07 +08:00
@shinyzhu 谢谢阿,已经看过这个了。不过大家认同的还是使用parse等服务,这个确实好,但是一旦超过免费范围,那价格。。。
soulhacker
2012-07-26 17:10:28 +08:00
APNS=Apple Push Notification Service,是苹果的服务,你没法搭建的;你说的应该是 provider 的部分吧,我们试过的 parse.compush.io 都不错的,不过要是价格敏感还是自己开发较好,仔细看看 Apple 的文档,做个 provider 不是很难吧。。。
FiberCore
2012-07-26 17:33:05 +08:00
@soulhacker 我不是说难,是说性能
sykp241095
2012-07-26 17:51:14 +08:00
dev-python/pyapns
tokune
2012-07-26 17:55:41 +08:00
X...都百万用户了..赚都赚死你啦..要找免费的啊..
felinx
2012-07-27 17:32:44 +08:00
每个月就发次把,一次百万,这个其实量很小啊,一个队列搞定。
xatest
2012-07-27 19:08:47 +08:00
自己搭的话可以考虑用APN Proxy,是SAE的员工做的。
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
2013-08-25 23:17:05 +08:00
我现在为我们公司做的,是每月360M的量,3.6亿条!
hjiang
2014-04-08 00:18:24 +08:00
可以用 AVOS Cloud 的 push (http://avoscloud.com),完全免费。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/43511

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX