斯托吉说,App Engine的限制并非出于自身的商业计划而强加给用户――尽管他们确实要这样做。这些限制,据他说,能让网络应用软件像谷歌一样高效。拿存储来说,App Engine使用谷歌独有的数据库系统,这个系统不同于许多开发者所熟悉的数据库系统,比如说MySQL。谷歌的系统不允许运行那些典型的数据存储命令,这些命令被公司认为会在大量用户访问数据时导致应用程序缓慢。
软件开发者布立特?嘉德纳(Brit Gardner)是位于达拉斯的费加罗互动(Figaro Interactive)的共同创建者。他在App Engine服务发布后不久,就开发了一个演示版的应用程序,以测试其性能。尽管他并不了解App Engine所使用的编程语言Python,但他说他只花了几天时间就在App Engine提供的空间中创建了自己的应用。
嘉德纳认为,App Engine和亚马逊的网络服务迥然不同,它是应用程序开发的框架,而不仅仅是出租处理能力和存储的地方。他说,他的网站远未达到谷歌的收费标准,同时也怀疑很多其他的网站也是如此。因为App Engine上有的不过是网站和众多的开发用户。
为何谷歌愿意提供这么多免费的午餐?产品经理皮特?库门(Pete Koomen)说:“我们正努力把网络推向一个平台,更多的应用意味着更多用户”。确实,就拿博客来说,如果人们建立网络应用便捷而便宜的话,更多人愿意扎堆,丰富而又拥挤的区域能带给他们随之而来的好处。当然,也有麻烦。
但是,不管用App Engine建立网页应用有多么迅速和简单,也不管谷歌的架构有多么好,缺乏开放性却是这项服务的一大缺点。虽然谷歌的代表说他们要避免把其他公司束缚在自己的系统中,实际却是,只要诸如数据库这些重要的部件属于谷歌私有,开发者就会放不开手脚。就我的例子来说,我目前只想着怎样写博客,而没有想要管理它,我只要软件干活即可。但保留这些权力对我来说至关重要,即在需要的时候把博客转移到其他地方,增加或删除工具,或在某个时候掌握足够的知识参与到该平台的设计。眼下这一代的App Engine没有给开发者这类选择。
虽然从App Engine中把数据转移是可能的,但斯托吉说允许将应用迁移到其他系统的特性还没有全部开发出来。同时,想要从App Engine迁移的开发者必须应对诸如此类的问题:从谷歌的数据库系统搬出来再重新使用MySQL。充分使用了谷歌数据库优势的开发者还需要进行大量工作,使得他的应用能在不同的系统中运转良好。和WordPress不同,对于在谷歌上开发的应用而言,失去其托管服务意味着失去整个平台。
此外,许多开发者想要清楚支撑应用程序的体系是如何工作的。嘉德纳说:“我们想要知道葫芦里到底卖的是什么药?”他猜想事情将来发展到某一刻,开发者们会极力要求得到更开放的视角。
尽管如此,App Engine还是令开发者为之一振。这是一项才华横溢的杰作,而且对于用户来说,价格无可非议。不过,博客技术革新最令人振奋的地方在于,它不仅带来了开放式的讨论,还带来了博客技术系统的开放性试验。App Engine的确降低了互联网创业的门槛,并带来更多新的开发者。但如果他们只能依赖谷歌所提供的东西工作,恐怕他们的创新将止步于此。
最近想要开博,得要挑一个博客服务平台。我选了WordPress,原因有二——首先,它的免费托管服务让我几分钟就可以开通博客,而且只有增加类似更多的存储空间这样的额外服务才需付费;其次,它的开源软件对我有很大吸引力。万一我要进一步控制博客的外观和功能,我可以在自己选择的域名下建立网站,并且继续使用这套软件,这很省事儿。
不单我被这毫无风险的平台招徕吸引,在Wordpress.com上,现在已经有超过350万户博客,每天有上千张帖子发布。这一切,都由一家名为Automattic的互联网创业企业所运作。
提供这种服务的公司很大程度上解除了对博客写手技术水平的要求。这让更多人能维护博客,营造出丰富的网络交谈环境。不过,也产生了另一种情形:任何想要寻找高质量内容的网民还必须从大量无趣或废弃了的博客中进行筛选。
谷歌在四月份推出了一个叫做App Engine(应用程序引擎)的试验版工具,它对网络应用编程人员的作用和Automattic这类公司提供给博客写手们的服务如出一辙。
网络应用软件也是程序,正如文字处理软件或多人联机游戏。不过,它完全依靠用户的网页浏览器运行。就此而言,它使软件业的前景产生了根本性变化,正如博客对出版业的改变。
网络应用程序使开发者可以直达任何使用者,而无需理会操作系统。规模小的公司(像最早的Salesforce.com)可以利用网络应用对抗业界老大。谷歌和Adobe这样的大公司更是可以押宝其上,挑战微软在办公软件的领导地位。
网络应用程序当然包含了实现该应用的软件,但它还包含了处理人们使用该程序时产生的网络流量的软件和硬件。这也许需要昂贵的服务器和额外的软件,使应用软件的处理和存储任务能够分离,并有效地分布在多台服务器上。开发者必须掌握这两项千锤百炼铸就的绝活。
尽管对于基础架构的全盘了解有助于应用软件的设计,但大部分开发者并不打算这样安排时间。然而,构建合适的基础架构又是如此重要。网络流量猛增能摧毁一个对此毫无准备的创业投资企业,就像谷歌的潜在挑战者Guil,今年早些时候就遇到这种情况。网站启动当天频频宕机,使公众信心渐失。另一方面,如果准备过分,创业企业又会把成千上万的资金浪费在不必要的硬件上。
谷歌的App Engine把基础架构出租给需要它的公司,这本是网络书商亚马逊及旗下亚马逊网络服务机构控制的领域。亚马逊把多余的存储和处理能力出租给用户,包括很多网络创投企业,他们只需支付需要的东西。
贾斯廷?嘉特(Justin Garten)创办了一家互联网企业Postful,把电子邮件转换为实物信件寄出。他认为用亚马逊的互联网服务,使公司规模比原先预计的小得多。他也很欣赏亚马逊这样任选所需的做法。“亚马逊的服务,我觉得有用的就采用,没适用的,我就建立自己服务器架构。”他说。
谷歌利用其巨大资源进行“谷氏特色”的运用,力图在这方面超越亚马逊——App Engine不收费!除非用户应用程序的使用空间超过500兆,或服务的网页浏览量超过五百万一个月。该项服务的正式版还没有提供给开发者,谷歌的产品经理汤姆?斯托吉(Tom Stocky)说,公司希望只有那些成熟的应用软件用到它。“一旦达到这个限额,你该有望开始挣钱了”。
尽管App Engine在定价上很大方,但它却不允许像下馆子点菜那样逐个挑选其功能,这跟亚马逊不同。比如,你不能简单地把App Engine仅作存储之用,相反,整个系统自带一套完整的组件。