说云之前,先讲点背景。我尽量希望能不讲得那么geek,现在看来不太成功。一句话地说:亚马逊2006年推出的Amazon Web Service的公共云服务炒热了云这个话题,更早则应该是VMWare(这个只知道卖傻力气干活不知道卖概念的公司)发端于10年前的硬件虚拟化技术。我没听说苹果有什么云。也可能是我不知道啦。后面是展开,不看也没什么。我发现云计算这个话题我好像很不提劲儿,因为大量的硬件内容,文艺一点叫做基础设施(infrastructure)。基础设施建设是很很老黄牛的。
========== 我是geek 展开的分界线====================
那个我其实很喜欢谷歌的,谷歌的垄断目前也不怎么让我烦。谷歌的产品怎么说都是精致的,小google app打开,对着话筒说出餐馆名字,然后城市名,它就迅速地打开google maps给找到了,然后点边上的电话号码,自动接通手机开始通话,真是太可爱了。我喜欢google的混不吝的geek胆量,干啥都不介意跟别人不一样(下面说云的时候会具体讲),这种胆量我很是佩服。所以android 并不差,能迅速占领半壁江山的产品哪能差呢,但是android 并不具有google其他产品设计的那种独辟蹊径的特质。以google的人力物力要自造硬件并非不可能。但是手机不是他们的核心产业,看到市场有利可图来分一勺羹,跟着第一名做类似的产品,这样的市场决策当然不能说有任何不好的,哪家大公司都干过。但借助自己一贯自由民主的形象,拉一面似是而非的开放平台的虎皮。这要是别的成熟大公司干可能都挺普通的,但google这么干,我就很不以为然了:Come on, Google, you can do better than that!
原因吗,大家都有过去2、30年开源代码蓬勃发展对抗垄断大企业的这个历史知识在脑子里。只是现在这个概念其实不那么适用了。(tulip 对开发封闭以及兼容性的关系讲得更明白。)任何一种方式,包括开发方式推到头都有弊病。各种软件的大框架的设计,包括诸多开源代码设计、把旧的软件直接移植到新硬件等等的存在让一般公司/人能够迅速搭建一个差不多的东西,降低了研发成本。但是当大家都这么干的时候,市场就越来越不耐烦等待要花费大量时间人力的优化产品的出现,谁都做差不离的东西,大家都次也就无所谓次了。说 android 是开放系统所以好,就是利用了人们的这个心理。但是开放系统的这个优点在IT业发展到现在又适逢云的概念的提出,其实已经不是那么重要了。google自己就有不少云概念出炉,当然不是不懂。首先,硬件发展到现在已经非常消费电子化,利润已经不多,比如大家都用得起笔记本,就不需要自己装台式机了。其次在云计算的理想世界里, 尤其是iphone 和ipad弃用flash之后,html5, javascript扬眉吐气,应用不需要跟系统绑在一起了,应用程序可以只是浏览器中的网页。那么理论上我的pocket frog小青蛙数据是存在服务器上的,然后我不管用iphone 啦,还是ipad啦,还是android打开只要登录进游戏公司的账号,我的小青蛙们并不会丢失,少了谁家的手机都行。事实也的确如此。所以主贴中的伤心在用解释语言写应用程序的云时代是不应该发生的,发生了只能说那家应用程序写的问题。
云计算这个思想很早就有了,大概60年代?但反正思想这个东西叫什么都有的,他的中心思想是计算能力这个东东吧,应该像水电一样成为
公共服务。水管子打开水就流出来了,有水表计数谁家用了多少水。我想用就用了,管你水管子/电网是怎么铺的呢,所以云计算又叫做utility computing。但像小白说的科学界类似,理论这个东东吧一毛钱一打子,真正做出来大规模使用那是另一回事儿了。然后当当当,某年某月某天,一个叫做亚马逊的很有思想的卖书小公司出生了,虽然生意做的一般,但绝对是Internet行业的理论家。他们先提出了
长尾这回事,养活了一大堆商学院教授。扬名立腕之后,也得挣钱啊,卖书固然高雅,但读书的人毕竟也没有那么多,要不我们也卖点别的吧。那反正我们的网购的名声牌子打出去了,成为一家大超市了,好多大小牌子想进来租柜台开专卖店,那也行吧,就都给开了。这个时候亚马逊已经开始发生了质的变化,亚马逊其实不是在卖任何书或者有形产品,他们卖的是一种卖场服务,相当于他们替大小牌子们做了一个网店,并且提供店面、促销、订购、结算、物流和客服的全套服务。在专卖店越开越多的时候,亚马逊理论家的本色又显现出来了。他们在实战中发现,发现各专卖店所需的IT资源流量的变化是及其有规律的,夜里12点以后很有些机器在白费电,但是资源得按照峰值规格配置。我们人类总是在为有限的资源奋战着,那么能不能有一种新的方法及能够保证各专卖店的峰值需要,又能够最省钱呢?此时亚马逊的思考的正是所有运营大型数据中心的公司所头疼的问题。既然专卖店可以出租,闲置的IT资源(cpu, memory, etc)为什么不能出租呢?(注意他们不是出租整机)这样数据中心不就用足了吗,这个思想把商品化做到了极致,啥都毫不含糊地明码标价。
公元2006年,亚马逊出台了市场上第一个以面向大众的云计算服务,叫做AWS。云
计算,要注意计算这个关键字,和传统的服务器出租方式不一样,亚马逊提供的是构成运算能力最基本的计算、硬盘、内存和网络资源,让用户自己在数据中心里攒机器,只不过这个攒的过程是在几秒钟完成,你自己也摸不着罢了。收费模式五花八门,充分体现了卖场零售业的精明,机器可以按小时收租用费,存储和网络收流量费等等。
此时,亚马逊已经基本实现了云计算的中心思想,cpu power,缓存,流量,存储像龙头里的水一样,用户用多少交多少钱,另有其他一些都非常方便的配套技术服务。计算机在亚马逊的AWS里就变成了一种
服务 service,而不是一台机器了。
云计算一出炉,原本愁云惨淡的IT市场精神一振,哇,又有人搞出新概念了!泡沫!快钱!很多钱!各大公司蜂拥而上谁也不能显得自己落伍,大家纷纷都提出自己的云概念,但不是云计算。
亚马逊说:我做出了云计算。
vmware 说:WAIT,云什么计算,虚拟化是我们起家的地方。什么云计算,不就是scalability 和虚拟化,我们都有,我们都是现在做得最好的。微软和Linux什么的,只不过是我们的操作系统上的一个应用。看我们的v-motion,从操作系统层面解决稳定性问题,多深奥多精彩。我们就叫虚拟化!
google说:云?新概念?没人比我们更新。硬件是我们系统里最不重要的部分,那数据中心里的云我们更不会被你们牵着鼻子走。我们提出更高层次的服务概念:platform as a service, 你们就连cpu啥的都看不到了,(你想看cpu干嘛?)我们就直接给你们网络编程的接口,你们就在我们自己设计的google数据中心里编程吧,喏,这里还有我们的gmail和google maps的API接口,直接编到你的程序里吧,我们的应用都在我们自己的云里,你们只要调用接口就会工作的,这叫做 software as a service。(就是小E诟病的那个的api。
)
小应用程序公司们欢欣鼓舞:耶~~~!不用买铁盒子了!又可以把所有程序都写一遍从新卖一遍钱了!而且用google这个不用自己操心硬件啦,托管啊,IT啦这种底层的乱七八糟我也不懂的东西了!耶!而且光用最上层的script language, php啦,ruby啦,写出来就在google的云里!耶!
思科这时弱弱地说:云。。。什么?你们都在说什么?
数据不是还都在我们家管子里跑的嘛。本来不是我们在大会上说个什么,其他人都洗耳恭听的吗?你们在说什么?啊,已经跑到应用层面去了?!我们networking变成管子工了!哼,当年还好有远见跟vmware绑得紧,v-motion, 想垮数据中心做v-motion吗,非得用我们的新路由器不行!我们抓紧我们的二三层搞我们的云。反正你们得用TCP/IP不是。(为此思科,vmware,HP这些只做硬件层面的叫做infrastructure as a service)。
vmware 说:呵呵,将来没了台式机都是云计算了,操作系统可不就是我们的天下了。
微软说:我们也有云啊,我们有上下各种品种齐全的云服务。
观众很倒:在哪里啊?没听说啊。
微软轻描淡写地说:已经绑在我们的操作系统里啦,就跟浏览器啦似的,而且免费,Netscape当年也风光一时。。。
企业软件公司如oracle说:重!写!软件?你再说一遍?我们也没啥具体想法,你们这些做企业数据中心的去给我们好好想想怎么也把这云的fancy加在我们现有的功能上面。
vmware 和微软马上表态说:没有,我们都一直都长一样的,你们上头应用不需要重写。
那google的云就很难进企业级数据中心了。
云计算这个话题真的很枯燥。。。