最近发了太多JobDeer的广告了,感觉不写点干货有些对不起我的粉丝们。于是这次写写我还算熟悉的领域——云计算。

作为新浪云的前产品经理,我不想从技术角度去讲云了,这次我从产品的视角来管中窥豹吧。当然,水平有限,错误难免,所以请各位看官批判的读下去哈。

如果要我来划云计算的里程碑,我会划出两个点。

第一个点是Xen等虚拟化技术的出现,第二个点是Docker等容器兴起。

在虚拟化技术出现之前,我们都在使用物理机。记得08年创业时,我一个人扛着一台1U托管进了顺义电信,然后就每隔一段时间给机房打电话,请师傅帮忙按电源重启服务器。

当有了虚拟化以后,其实只发生了一个小改变:一台物理机可以被分割成许多台虚拟机了。

这件事情有什么意义呢?

至少有两个方面的意义。

首先是利用率。

每台物理机只能有一个操作系统,而在一个操作系统里边,各种业务可能互相干扰。所以我们一般会把机器按业务分组,来创建集群。对于大型项目来说,集群的利用率是不错的。但是对于小项目,这种方式利用率就很差了,因为一个业务节点最少需要一台独立的机器。

有了虚拟机,就不一样了。一台机器可以虚拟化为很多个操作系统,分配给很多不同业务和不同的人。这样利用率就上来。

然后是可控性。

在虚拟机之前,有很多控制是物理的,就像我前边提到的,重启是需要按电源的。但是虚拟化以后,重启就变成软件可控的东西了(当然,前提是挂掉的不是宿主机)。

可以用软件或者API接口随时启动、关闭虚拟机说起来是件小事,但这后来却演变成了可以自动调度的弹性云服务—— 当你的应用压力大时,云平台可以自动帮你创建新的虚拟机;当应用压力小时,它可以帮你关几台,省电省钱。自动化的能量就是这么大。

以这部分服务为基础,云计算的最基础的一个层次,IaaS(基础设施即服务)出现了。之后虚拟化技术本身开始日益成熟、很多服务器开始在硬件级别支持虚拟化;再后来,以操作系统为粒度的隔离方案不断加强,保证在同一台物理机上的虚拟机用户不会因为写磁盘太猛、用网络过度等情况影响别人。

隔离技术可以说是云计算的核心技术点之一,正是隔离技术不断的进步,使云的隔离粒度一层层加深,从而推动了云计算产业的一级级迭代更新。

接下来,这帮用惯了虚拟机的程序员们开始不满足了。为什么我写20个PHP项目,需要我装20个操作系统?为什么不能这20个操作系统共享一个Web运行环境,而20个PHP项目之间彼此隔离就好了呢。这样我就只需要上传PHP代码就好了。

于是我们对云计算的隔离粒度提出了更高的要求:隔离能不能从操作系统层次进化到应用层次。

PaaS(平台即服务)出现了。

由于应用本身对于平台有依赖,所以我们一般会选择将通用功能做成平台共享的,而将应用代码和数据隔离。

为了实现这个隔离,我们需要制造沙箱。沙箱必须足够安全,除了能合理的分配各个应用消耗的资源外,它还要保证两个用户之间绝对不能非授权访问到彼此的数据。

不同语言用到的沙箱技术不同,所以这个时代的PaaS多是可语言相关的。

比如GAE支持Java和Python、HeroKu支持Ruby。用得最多的PHP语言却没有可用的PaaS,所以新浪做了国内,大概也是全球第一个支持PHP的大规模公有PaaS平台,那就是SinaAppEngine。

我喜欢把这些PaaS称为专用PaaS。

专用PaaS有突出的优点,也有蛮致命的弱点。

优点是它可以非常有效的降低资源消耗,并在开发者遵守约定的前提下极大的提升开发效率。由于PaaS平台的管理者可以统一管理绝大部分资源,所以它可以实现去运维化。

去运维化是PaaS和IaaS最大的区别,这个区别让PaaS平台有了和IaaS平台PK的资本。

以我们公司为例,如果将JobDeer放置在IaaS上,我们就需要维护完整的操作系统。

日志是否超过4个G了,Apache和Nginx的升级布丁是否打好了,SSH是否被人恶意扫描了……

种种烦心事都随之而来,最后我们就只能去雇佣一个系统管理员来做这一切。对于一个创业公司,这是至少每年10万的投入。

于是我们选择了将JobDeer放置在SAE上,从6月到现在,我们的花费不过几万云豆——等于几百块钱,这里边没有因为运维花一分钱。

那么为什么这么好的模式,没有把所有生意都从IaaS服务商那里抢过来呢?

因为专用PaaS有一个挺大的弱点,就是沙箱技术的不完美,大部分的PaaS平台都要求应用程序本身针对平台进行相应的修改才可以运行。比如在SAE上,代码目录是不可写的,文件上传的路径是SAE_TMP。这些看似微小细节的不兼容,却导致了大量的现有项目不能直接运行在SAE上,而要修改成千上万的项目并让其在最新版本中支持PaaS平台,是一件费时费力的事情。

正是因为这点,专有PaaS才没有成就其霸业。不光是SAE,GAE也没能在竞争中PK过AWS。其实我觉得挺遗憾的,我内心里还是相信有机会的。

看到这里你一定会问,那我们能不能造出一个完美的容器,让其可以完全兼容标准应用环境,这样这些应用就不用修改就可以直接运行了呢?

我对这个问题也很好奇,而且做出过努力。这个努力就是全兼容沙箱(它被应用在新浪云商店上),这是新浪云在全兼容容器上的一个尝试。但不得不承认,我当时的想法还是局限了一些,我们只做了对PHP在单机级别的全兼容。

一方面是从专用PaaS平台带过来的惯性思维,觉得这种容器也应该是和语言相关的;另一方面在技术投入上也存在一些制约因素。

往后过了一段时间,系统级别的容器技术成熟了。Linux container(简称LXC)开始应用在各种场景。于是我们规划了沙箱2.0,完全基于LXC,可以兼容各种语言,但SAE已经腾不出来人开发了。

再晚一点时间,Docker出现,它不依赖于语言,可以轻松的把机器隔离到进程粒度——于是泛PaaS时代到来了。

进程粒度的隔离意味着什么?

本质上来讲,它不过是一个性价比更好的虚拟机而已。但是当虚拟化到达进程级别,「虚拟机」就廉价化了。你会为了一个Apache起一个虚拟机么?你会为了一个MySQL又起一个虚拟机么?不会的。

但你会为Apache起一个Docker,为MySQL起一个Docker。因为它们不过是两个进程而已。分成不同的进程,可以更好的对架构去耦合,当Apache升级时,MySQL不会受影响。

但是,泛PaaS未必任何地方都比专用PaaS强,由于没有了专用PaaS里边的平台层,运维成本又被重新引入了进来。现在你有一堆的Docker要管理了,不比一坨虚拟机轻松多少。

所以泛PaaS要发展,必然要出现一个在Docker容器外层对其进行统一管理的平台。因为借助这个平台,我们才能重新去运维化。

在国外,CoreOS就在这个方向上一路飞奔。它提供管理工具,可以按配置批量创建容器,又将各种Docker容器服务化,提供了服务发现机制。这些都是为了把碎片化的Docker容器重新拼接成一个进程粒度的、分布式的、免运维的平台。

在国内,前SAE总监王利俊同学创办的NiceScale.com 也是为Docker去运维化服务的,他们采用了更独特的方式,目前产品还没正式发布,我就不剧透了。

可以看到,隔离技术的不断进步,就如同智子在不同维度的展开,一层层的推动了云计算往纵深发展。如果用一幅图来表示的话,大概就是这个样子:

云计算的进化

当隔离层次进入应用层后,会发生一个质的飞跃。这个飞跃我叫它分布式SaaS(软件即服务)。

先来说说原来的集中式SaaS。

其实SaaS虽然是云计算最上边的层次,但其出现却非常早。这是因为它其实和虚拟化没有什么关系,也并不依赖于IaaS平台。

它指的是人类通过网络(特别的是浏览器)直接消费服务,但如果按这个标准,网站就是最早的SaaS —— 我们通过浏览器消费资讯、社交等服务。但其实我们并不把网站叫做SaaS,而是把原来C/S结构的产品,比如CRM、ERP的B/S形态称为SaaS。(Salesforce:怪我咯)

集中式SaaS有一个非常大的问题,就是它的数据安全。

iCloud最近被攻击,你们都看到明星的艳照了。集中式SaaS出问题时,使用SaaS服务的所有公司都没法工作。这就是中心化的代价。

在我看来,互联网的发展都是以去中心化为方向的,即使是像微博、Facebook这种原本封闭的网络,也通过开放平台,在一定程度上实现了去中心化。

所以我相信,一定会有比集中式SaaS更好的模式存在。

我们回过头来看隔离粒度。

当隔离粒度从物理机器进化到操作系统层次时,催生了IaaS业务,实现了去机器化,我们不用再关注机器本身。

当隔离粒度从操作系统进化到进程层次时,催生了PaaS业务,实现了去运维化,我们不用再关注操作系统,可以专注业务本身。

所以我花了几个月时间去思考,下一个粒度是什么。但当我往下挖了几铲子,「哐」的一声,发现旁边的门打开了。

当隔离粒度达到进程级别,一类特殊的进程开始催生新的业务 —— 这类进程叫做云APP。

APP层隔离和进程层隔离在技术上大同小异,但是他们的受众发生了巨变。

一个Apache进程,只有程序员能消费;一个WordPress APP,不懂技术的人也能轻松享用。

所以,当隔离粒度专注于云APP时,将实现去技术化,不懂技术的人群将可以第一次享受到完全自主可控的个人云。

分布式SaaS来了,云APP 2C的时代来了。

这撬起了个人云APP这个巨大市场的一角。想想手机这个市场,App store出现之前,我们只能被动的去使用手机上仅有的那一点点应用,没有人会为了手机上的应用花钱;而当App store将这个手机应用市场做起来,将其透过手机推给每一个普通人时,一个几百亿的市场出来了。

云App也是一样的。以前我们只能被动的接收各个网站、App提供的云端同步功能,将自己的隐私数据保存在一些有流氓前科的公司服务器上(这对不懂技术的人群来说,其实是没有选择的)。

但是如果他们可以选择了呢?

这就是Docker为什么要做Hub,Docker是云APP的封装技术,Hub就是云App的分发器和渠道通路、是云计算中的App Store、是云APP商业化的关键节点。

先是提供技术中间件级别的分发,覆盖企业和开发者;再是提供个人云APP级别的分发,让SaaS进入从来没覆盖过的个人市场。

顺便说一句,从这里我学到的是,技术进步的方向是由需求带动的,而不光是技术本身。如果没有一个强需求来拉动,技术进步本身就会变成学术论文——就像一枚种子,只能静静的等待属于它的时代。不幸的是这个时代经常还没到来就已经过去了。

上一节说得很抽象,我说个现实的例子你们感受下。

还是从iCloud的艳照说起吧(我是有多在意艳照,笑),当分布式SaaS到来后,我们不会将自己的私密照片同步到iCloud的云,而是去云APP商店挑选一款私人数据同步软件,比如OwnCloud。

只需要点一下鼠标,将其加入购物车,然后输入我们想要的网址,支付购买。30秒不到,地球上就有了一个专属于你的私有云,别人连它的网址都不知道,更别说密谋攻击它了。

然后网站会显示一个二维码,扫描二维码后,你的手机上就有了一个APP,可以随时消费来自你私人云端的数据。

个人再也不用担心隐私(其实是概率小了非常多)、公司再也不用担心数据安全(其实是掌控了数据所有权)。

那么,谁会去开发这些专门使用于私人云的应用呢?

每一个成功的软件产品背后,都有一个和它功能相当,而体验略差的开源产品(笑)。这是因为大部分开源软件在和商业软件竞争中不挣钱导致的二期投入不足。

一旦分布式SaaS建立起来,开源开发者可以从平台售卖的云空间利益中分成,我也相信,有越来越多的优秀开源产品,可以直接对消费者收费。(即使是开源的,不懂技术的消费者也不愿意自己去手工搭建环境 —— 他们更愿意付钱解决问题,这是程序员们难以理解的。)

开源软件如果能挣到钱,挣到大钱,那么那些以控制和中心化为生的商业软件在它们面前将会黯然失色。

这是一个多么灿烂的未来。

不管你信不信,我的前同事,新浪云的运营经理王伟平同学信了。于是他上周从新浪离职,创建了基于Docker的即点即用分布式SaaS平台—— diancloud.com 。虽然不知道这个月底能不能上线,但据说已经可以在网站上申请邀请码了。

再来说说其他层次。

IaaS这个层次正猛烈分化,一部分在快速下沉,另一部分快速上升。

所谓下沉,是指原来做机房的、做通信的公司都在快速进入这个市场。而随着IaaS平台管理软件(比如openStack)的日益成熟,这个层次的技术含量将越来越小,工程强度和日常运维层次的要求反而会越来越高。

最后,会催生一个平行于银行系统、交通系统、通信系统同等体量的云系统。会不会被国有化难说,但必然会进入国家控制范围。

所谓上升,是指原来依托虚拟机来做弹性扩展等业务的平台,会迅速转移到进程级隔离的技术(比如Docker)上来。这将从根本上改变软件开发、软件测试、软件分发、以及软件销售的流程和格局。

如果还觉得抽象我说几个比较接近的词:Github、DevOPS、分布式SaaS。

就写到这里。这篇文章里边有很多的预测和个人观点,不一定是对的,但都是我思考过的。我尽量把得出结论的原因和逻辑表述出来了,大家在这个基础上去自行判断吧。当一个崭新的云时代夹杂着大块美金迎面砸来时,有人抛个砖总是好事,对吧。

私信发送DY可以订阅我的微博,不过也不知道下次写长文时哪天了……

如果您要转载本文,请保留以下声明:

本文作者: @Easy ,国内首家互联网人才拍卖网站JobDeer.com创始人,曾任新浪云产品经理。

原文首发于GET新知社区:http://get.jobdeer.com/706.get

感谢pmcaff智囊团预备群 丞相 推荐

--------------------------------------------------------------

回复“产品干货”可查看最新产品类优质文章

回复“运营干货”可查看最新运营类优质文章

回复“人物”可查询最新互联网大牛访谈等优质文章

回复“创业”可查询最新创业类优质文章

文章推荐可直接回复公众账号或者发送至xiaoxi@pmcaff.com,可根据推荐质量将推荐人邀请至pmcaff智囊团预备群中,原创或者推荐均可,欢迎来稿~

pmcaff愿见证你的成长

【干货】一个产品经理眼中的云计算:前生今世和未来相关推荐

  1. 洪小文清华论道:AI 的前生今世及未来应用图景

    来源:微软丹棱街5号 丹棱君有话说:这是一场解析了 AI 前世今生及未来应用图景的演讲,一场经济学家与科学家的问答,将会对撞出怎样的思想火花?6月13日,微软全球资深副总裁.微软亚太研发集团主席兼微软 ...

  2. 一个阿里产品经理眼中的“垃圾分类”

    我叫切斯,是阿里巴巴的一名产品经理.今天和大家说说一个上线刚刚6天,已被500多万网友疯玩的AI--垃圾图像识别,可见垃圾分类苦天下网友久矣. 以下是一个产品经理的碎碎念~ 有人说它是"国内 ...

  3. 【体验干货】产品经理必知:产品体验报告如何写的全而精

    微信ID:tsesup 公众号:pmheaven(产品作坊) 体验产品是PM工作中经常做的事情,企业也常留一些这样的实习作业给面试者,是因为产品体验报告一定程度上直观的反映了面试者的专业水平.求职过程 ...

  4. 【干货】产品经理的需求管理

    自从1927年宝洁公司诞生产品经理这个职位以来,至今产品经理已融入到各行各业中,尤其是随着互联网行业的蓬勃发展,产品经理岗位也越来越吃香.那么产品经理都需要什么样的能力,什么样的人适合做产品经理呢? ...

  5. 废掉一个产品经理最常见的方式,就是天天画原型

    最近有朋友向我抱怨:回顾两年产品生涯,突然发现自己好像一直在忙着画原型,Axure倒是用的更顺手了,其他一点长进都没有. 很多同学都会陷入这种看似很忙很充实的工作节奏,实则没有成长. 产品经理,一直闲 ...

  6. 【干货】产品经理常忽略的用户研究的四大误区

    近期和一些做用户研究的人员进行了交流,发现很多做这个行业的人都对自己所做的工作有些迷茫.报告写了很多,数据也分析了很多,但是却感觉对产品的实际运营帮助不大,甚至分析出来的结果和实际情况比偏差很大.其实 ...

  7. 【干货】产品经理解决问题七步法则

    善于解决问题的能力通常是缜密而系统化思维的产物,任何一个有才之士都能获得这种能力.有序的思维工作方式并不会扼杀灵感及创造力,反而会助长灵感及创造力的产生. 步骤一:清晰地陈述要解决的问题 清晰地陈述问 ...

  8. 【干货】产品经理处理工作中突发事件的新技能Get!

    东东推荐:产品经理又称"产品汪",日常工作多而且繁琐,经常会出现突发事件需要处理,所以处理突发状况的技能已经是产品经理必备技能之一. 在日常工作中,我认为有且仅有以下3种情况: 制 ...

  9. 李开复:谷歌产品经理眼中的产品经理

    本文作者是 Google 集团产品经理Ken Norton ,他由技术转产品,在创业公司和大公司都有着丰富的产品经理招聘经验,这篇文章分享了他认为产品经理应该具备的最重要的特质,并提供了一些在面试中考 ...

最新文章

  1. Spring学习3—控制反转(IOC)Spring依赖注入(DI)和控制反转(IOC)
  2. Tesorflow源代码安装方式以及错误的解决方法
  3. linux phpinfo mysql_linux服务器 phpinfo 里面找不到 mysql 模块,也没有 pdo_mysql
  4. linux图形开发工具
  5. Ext2 常见界面界面(grid分页、窗口布局、下拉框级联)
  6. 【物联网智能网关-16】成功移植SQLite(STM32 .NET MF平台)
  7. 跨境电商无货源自发货铺货ERP店群管理软件
  8. 理查德•弗曼学习法思维导图-程序猿学习法
  9. ERROR 1366 (HY000): Incorrect string value: '\xE8\xB5\xB5\xE9\x9B\xB7' for column 'Sname' at row 1
  10. DC-DC变换器(DCDC Converter / Switched-mode Power Supply)简介
  11. SAP HR/HCM 定界的个人理解
  12. [bitfinex]自动放贷小程序炮制过程描述
  13. 动态分析Android App之动态调试
  14. Latex排版IEEE论文
  15. JAVA视频学习笔记-马士兵(七)
  16. Mac 文件直接被永久删除,而不进垃圾箱 的 解决办法
  17. b、B、KB、Kib、MB、MiB、GB、GiB、TB、TiB的区别
  18. 计算机一级平均分函数,WPS2007中求特定比例成绩的平均分
  19. 零跑是有信心了吗?零跑的股价集体向好发展
  20. 小电流接地选线(一)

热门文章

  1. 编码utf-8的不可映射字符_MySQL 请不要使用“utf8”
  2. Postman获取App端接口
  3. cad中拖动文字时卡顿_技巧CAD制图的一百多个技巧,都学会你就逆天了!(下)...
  4. html调用chr,PHP: 使用chr打印汉字
  5. c++ 结构体地址 转换成ulong_零基础入门之结构体字节对齐
  6. freertos 定时器 不启动_FreeRTOS 从入门到精通8--软件定时器应用
  7. 的源码管理器中有感叹图标_Win7系统我的电脑中没有光驱图标的解决方法
  8. C++:控制台程序弹出消息框
  9. 逻辑回归是个什么逻辑
  10. 【重要】如何彻底夯实CV基础,有三AI三大导师一起带你学习!