苹果与云计算

我从来就没搞清楚过到底什么是云计算,尽管这个词已经被广泛地应用在各种似是而非的场合了。一个朋友向我推荐了一篇去年年底的文章:《云计算与网格,360度面面观》,作者是Ian Foster,他是芝加哥大学计算研究所的主任,也是美国阿贡国家实验室的分布计算部门的主任,是这个领域的领袖级科学家。文章是技术性的,但是开头和结尾部分是比较平实的讨论,因此我读完后决定把它摘译一部分放在这里。

如果你害怕连这个摘译版都冗长乏味(作为一篇技术论文的一部分而非杂志专栏,它确实比较乏味),那么请允许我用一句话总结它的中心思想:计算是一种公共服务(utility)。在英语环境下 utility 这个词一般用来指代诸如水电煤气这样的定期付费服务,由此可以了解,作者对云计算的期望是明确的:像水电一样可以被直接方便远程调用的计算资源,所有的配置管理都不需要用户操心,用户只需要合理地付费就可以了。以此为标准,可以看出今日冠以云计算名目的许多服务都离这个理想还差得很远。有太多计算和存储的需求以及管理和配置的任务仍然堆积在本地完成,而真正利用远程廉价高效的大规模计算机群为自己的个人需求服务这一梦想离大多数用户仍然遥不可及。

需要指出的是这篇文章从头到尾都没有提到过苹果公司的名字(但是提到了Google,微软和Amazon)。苹果对云计算这个概念的态度一直是微妙的,我记得在2007年5月30日Steve 和Bill 的 D5 访谈中,主持人Walt 和Kara 问到了关于云计算和客户端的平衡关系的问题。这一段问答很有趣,摘译如下:

Walt:您二位每天都在用互联网,你们有互联网上的
产品和新玩艺儿,你们有iTunes和.mac之类的东西,但是另一方面,你们是“强客户端(rich client)”的代表人物,你们代表了PC和大操作系统。有一种观念——这里也会有很多人同意此种观念——就是所有这些东西终究都会移入云中,人们不会再需要你们为之奋斗了终生的那些大家伙。每当人们把你们看作对手的时候,人们都会觉得你们像是……

Steve
恐龙?

Walt
啊?

Steve
就是说我们都是恐龙呗?

Walt
恐龙啊?差不多吧,就说恐龙好了,我其实是想说……

Kara
你们都把赌注放在了变革中的系统之上。

Walt
五年后,个人电脑会仍然至关重要么?

Bill
嗯,你可以说人们会预测它不会这么重要了。你看,五年前网络电脑就让我们失望过了。还记得“单功能电脑”么?那谁谁说过这些东西都是扯淡来着。

Kara
Larry Ellison (甲骨文CEO)。

Bill
主流总是被抨击的对象。问题是人们没明白你总是得需要一个强客户端才行,我是说,至少我们会觉得一旦你要处理声音啊视频之类的,你还是要有一个强的客户端和别的地方的强大内容配合才成。你看有些设备是连接到电视上或者汽车上的或者是轻量级的互联网接入端,但是一旦你要干一些全屏幕的事情,编辑文件啦,搞创作啦,我觉得我们还是得进一步把它做得更强。

Steve
我来举一个很说明问题的例子:我喜欢Google 地图,我自己在电脑上也在浏览器里用它。但是当我们要做iPhone 的时候,我们觉得是不是应该要让iPhone 也能用地图?然后我们就联系Google,他们给别的手机做过Java 应用,有一些API,然后我们拿过来用。最后我们写了一个客户端,提供后台服务的。结果我们写的这个客户端就把所有其它的Google 地图客户端都远远超过了。服务器过来的是一样的数据,但是我们这里给的用户体验是无与伦比的,比电脑上的好多了,更不用说和以前别的手机上的那些相比了。你看,客户端有客户端的技术,当我们给别人看的时候,他们都惊了。你在浏览器上就做不到这个。

人们是还在研究浏览器上还能做什么,当你断线的时候浏览器还能稳定显示什么,你怎么做那些本地的应用,联不联网都能用的。但是这个过程是很慢的,你还是能让一个强客户端做很多事情。与此同时,硬件在发展,所以你能让一个很强的客户端在越来越廉价越来越省电的设备上运行。你还是能把客户端做得很酷。

Walt
好吧,所以你们觉得客户端还是很关键的,但是——也可能我没弄懂——你这个例子是关于一个我们一般不认为是PC的客户端的。

Steve
我是想说,我觉得真正强大的客户端和强大的云端服务结合起来才是真正厉害的,和仅仅一个浏览器相比,客户端应该强大得多才对。

Walt
Bill 说呢?

Bill
是啊,从结构上说,问题在于你是不是真把一切都放在云里头然后本地就安装一个浏览器?这问题对电话和对全屏幕设备来说都存在。对全屏幕设备来说有一点区别,一个5寸屏怎么也比不上一个20寸屏,或者一个大的卧室显示屏。这些东西本身是要计算的,它们是都连着互联网,但是你得在本地有一个即时的响应而不能都受制于网络带宽的限制。所以说这里头有一个平衡的问题。

这段对话发生在将近两年以前(2007年5月),其时上网本还没有出现(参见Apple4us 近期关于上网本的系列文章)。2007年底,华硕推出Eee PC,一炮而红。2008年7月,苹果推出饱受诟病的MobileMe,这是迄今为止苹果在云计算方面推出的最主要成果(也许还应该算上今年年初推出的 iWork.com),2008年10月,微软推出Azure 云平台,旗下包括Live系列软件等云端应用。

关于苹果到底要在云计算这条路上怎样走下去,这是人们普遍关心而尚无答案的问题。然而至少可以肯定的是,(至少在Steve Jobs在位的时代)苹果的注意力更多的集中在客户端而非云端的建设。在上面的访谈里,Steve说要把两者结合起来才能实现最大的威力,然而不难看出他的言下之意是:对苹果来说,更重要的是把客户端全力做到更好。这一立场是否正确?见仁见智。这一立场在两年后的今天是否有所变化?至少今天