2009年1月15日星期四

iPhone 的 Microsoft Push Mail vs BlackBerry Push Mail

庄子@ror

给 iPhone 3G 配置了 MS Exchange 连接,采用 Push 方式,结果2个小时就把电耗完了。。。真是跌破眼镜。

因为没跑其它程序, GPS 定位也关掉了,看看数据流量统计也不是很多,只有怀疑是这个 Exchange Push 的工作方式有问题。充电后改成定时每30分钟去 Pull/Fetch 的方式,结果 10 个小时下来,邮件收发不少,耗电几乎可以忽略不计。

看来 Microsoft 自己开发的 Push Mail 真是个鸡肋。

先简单介绍一下 Microsoft Push Mail 的工作方式。

QUOTE:

MS Push Mail 是 Exchange Server 2007 的内置功能,其目的是当新邮件达到服务器时,即时的把邮件推送到手机上。手机端需要是 Windows Mobile 5+,或者兼容 Exchange ActiveSync 协议的手机程序譬如 iPhone。

1. 手机端向 Exchange 服务器发出 HTTPS 请求。此请求称为 ping。请求告诉服务器:如果下一个 15 分钟内,有任何变动(新邮件,日历事件等等),则通知手机。否则,Exchange 服务器应当返回 HTTP 200 OK 代码。然后手机端就进入待机状态,并且维护、保持这个超长 HTTPS 连接。

2. 如果在 15 分钟内没有变动,则 Exchange 服务器返回 HTTP 200 OK 作为响应。手机端接收此响应,就关闭这个 HTTPS 连接,之后再次发出 ping 请求。

3. 如果在 15 分钟有新邮件,则 Exchange 服务器通过之前建立的那个 HTTPS 连接发送响应通知手机端:有新的或更改的项目;同时提供新的或更改的项目所在文件夹的名称。手机端收到此响应之后,它将为有新的或更改的项目的文件夹发出 同步请求。同步完成后,手机端将发出新的 ping 请求。




可见,这种方式的稳定性很大程度上取决于无线网络的稳定性。如果网络不稳定导致 ping 经常断开的话,手机端会尝试不断的重新 ping。这将非常耗电。

Microsoft 的这种 Push Mail 方式,其实不是真正意义上的即时推送,它的好处是可以部署到任何一架 Exchange 服务器上而不需要第三方的支持,这是它跟 BlackBerry 方式竞争的卖点之一,BlackBerry 的 BES 部署需要 GSM 运营商的协助。

由于 MS Push 不依赖于第三方,因此 Exchange 服务器是没办法知道手机在哪儿的,当有新邮件的时候,Exchange 服务器不知道怎么去通知手机,这就需要手机端先发起一个连接 (ping),相当于架了座只能用 15分钟的桥,然后15分钟内的所有信息都通过这座桥来往。现在看来,至少在 iPhone 上,维护这个 ping 的连接相当的耗电。

至于 BlackBerry 的 BES 方式,BlackBerry 服务器可以通过运营商的 GSM 网络找到任何一架 BlackBerry 手机,因此它可以随时随地的把资料推送到任何一架 BlackBerry 手机上,而无需手机端建立/维持什么连接。我用 Blackberry 3 年多了,用电时间从一开始的7天到现在的3天 -- 这是电池正常耗损的结果。

当然要是把 MS Exchange 改成 Pull/Fetch 的方式,不要不断维持一个 15分钟的 ping,只是每隔一定时间去检查一次,耗电量会好很多,只是这样一来就失去即时推送的目的了,对那些需要随时随地收发 email 的人来说,还是 BlackBerry 实用些。


-----------------------------------------------------------------
soki@ror:

没有真正做到push的目的 blackberry是当有邮件的时候会发一个特殊字符的短信到手机上激活自动收取邮件功能,而exchange的宗旨是同步 所以就造成了这种过大的电池浪费,相对15分钟的自动检查更合适

---------------------------------------------------------
simonz@ror
背后的商业模式不同,用Blackberry每收发一封邮件,RIM都有收入,因为每封email都经过了RIM的服务器。就算RIM以后不卖Blackberry,靠着它建立的庞大的用户群和使用习惯,它照样有持续的现金流。

Apple还有其它手机厂商一直都想模仿这种商业模式,从厂商转变成为运营商,Applie的ipod音乐下载就是一个成功的例子,但是在iphone上无奈没有成功。其中的原因当然有很多。

没有评论: