中国IDC圈8月31日报道,无数据不未来。数据是源头和动力,不同行业对于数据的管理,需要的服务的需求一定是不尽相同的,在云时代,解决方案会颠覆过去传统软件的解决方案吗?8月29日-30日D-Future数据时代峰会上七牛首席架构师李道兵为我们解读了七牛云行业解决方案。
七牛首席架构师李道兵
以下是七牛李道兵演讲内容(根据速记整理):
李道兵:大家好,我是七牛的首席架构师李道兵,今天在这里我想给大家谈一谈七牛发布的解决方案,在说解决方案之前想跟大家先分享一下这本书,这本书发表已经21年了,在本书差不多是两个时代的一个分界线,在这本书发布之前,我们看到的软件世界是灰暗的。ABN(音)的工程师由于压力过大,在办公室吃打印纸。
我们可以看到,在这之后,我们可以享受到很多庞大的软件,比如视窗。这个与设计思潮带来的改进是非常相关的。接下来,二十多年前我们大部分的需求是来自客户端软件的复杂性,现在我们面临的需求跟之前不一样了,我们先回到这个主题,之就是七牛的解决方案这个主题。
解决方案不是新的名词,毕竟如果你做一个商业公司,比如电商,你需要一套物流体系,一套供货体系,一套支付体系。这一些东西没法用一个简单的软件搭起来,一个好的办法是什么呢?就是我们找一个更优经验的传统的IT顾问公司,帮你做解决方案,做设施,甚至帮你做运维。但是20年前我们可以这样玩,现在这样玩是不是合适呢?现在是一个互联网时代,互联网时代创业公司很多,各种的创业的新的增长点也很多。但是这一些,在每一个增长点来讲的话,都有很多很多的创业公司在这上面工作,那么这个竞争也比以前激烈很多。以前的方案施工周期很长,六个月九个月甚至一年以上都是常事。第二个是不灵活,毕竟要跟第三方沟通。然后成本也不低,高额的佣金,可能你拿到的风投拿到的A轮都不够给这些公司付佣金的。另外你付了钱就能得到一个好的产品吗?未必。比如苏宁易购打造的平台,上线没几天就宕了。可能他们不适应互联网时代,对于爆增的访问量的预估不足造成的。
而我们换一个角度,来看我们现在互联网时代的一个,我们究竟需要一个什么样结构的软件,什么样结构的产品,底层的设施,我们简单的,人可以把我们的产品分为客户端、产品端两部分,现在大部分的客户端都属于两个类型,一个标准的网页浏览器,第二个来讲是移动设备。而服务端来讲的话,就是说,由于现在我们大量的一些基础服务,比如说存储、全面搜索,还有一些消息堆点之类的,我们又可以继续把服务端分成两个部分,第一部分是客户的私有的服务,第二个部分,它对应的云服务,整个构成了我们简简单单的BMCS的结构。这个结构我们换一个尺度来看一下的话,特别是服务端,我们又可以分为两个部分,第一个部分是你最基础的组件的部分,包括数据库、存储、消息系统,你的全文检索系统,邮件发送系统等等这些组建。第二部分,你自己的私有化,通过一些场景化的模式,如何把你的组建联合,或者是整合成一个服务。在组建这个方面,我们看到大的方面,各个组建云化,云端化的越来越多,你常用的都可以找到云化的。场景化是大部分人很头疼的问题。大家想一想,如果你找到一个别人已经做过的。把你的idea变成产品过程,会不会顺利很多呢?这个就是我们这一次想做的事情。我们想把场景化的模式,变成一份你可以看得见摸得着的东西,让可以模仿、学习,并且融合在你的工作当中的一些东西。具体这方面来讲的话,七牛又是怎么去推进,怎么做这个事情的呢?首先来讲的话,我们有大量的客户,我们跟这些客户,通过跟他们一起讨论,来确定他们的这种行业,有哪一些业务场景,一个业务场景来讲的话,它其中会有哪一些痛点,我们根据它的痛点,设计出来的七牛特色的一个架构,这个架构来讲的话,基于我们的云服务,采用这个架构,架构能很好的解决这些痛点。然后在跟很多客户来交流来讲的话,我们在很多架构里面发现共同点。比如,特别是移动端的客户都有需求。就是有很多照片也好,文件也好,都要跟客户端同步。这些同步来讲,我们独立出来一个新的产品。这个产品反过来影响了我们的架构。
就是我们以后设计新的架构的话,这些新的,比如同步服务,其他的服务,可以作为一个新的组建,直接应用在这个架构里面。那么来讲的话,我们现在这一些七牛的组建和服务来讲,可以有哪一些呢?比如比较基础的来讲,包括对象存储,包括富媒体计算平台,网络加速平台,计算平台。同时在这些基础平台之上,我们挖掘了我们的一些上层组建,比如直播服务,云盘同步服务,还有我们的一个大数据分析类服务。还有我们的七牛的合作伙伴推出的个性化推送,比如推出的一些APM服务。这些服务来讲构成了骨架的作用。我们把剩下来的变成一个整体,变成一个整体的服务。
之前我们介绍过设计模式,设计模式来讲,它分为三个打雷,推出了23个具体的场景的设计方法。我们仿效一下先贤,七牛在这一波里面进行七个行业分类,在这七个行业里面找出了31个场景。比如O2O这个行业来讲,我们分为五个具体的场景,包括垂直社区,达人视频,每页的导购,还有售后追踪服务,上门服务等这些购物场景。接下来我想稍微具体一点跟大家讲一讲,拿其中一个场景跟大家讲一讲我们到底做了一些什么东西。第一个我想给大家讲的是七牛的安防视频的解决方案。安防现在进入了千家万户,每个家有一个摄象头来为你家做保护。安防是相对来讲比较简单的领域,它最重要的是两个部分,第一个数据流怎么上来,第二个数据流怎么分发出去这两个问题。而针对这两个问题的话,我们都有对于它们具体的提出了一些解决方案。这一副图是整个上去的流程,上去的流程,我们是从客户端,这个客户端包括摄象头、手机终端这类的客户端,这类的客户端通过ITMP推流就可以直接推送到云平台,但是在推流之前有一步少不了的就是建全操作。拿健全权限之后可以把流推送到直播服务。我们直播服务会把其中一部分,存储它的数据到我们的存储云,同时开始以直播流的方式往外推送。第二个部分就是直播加速部分,我们客户端是多种多样的,每一种客户端接收的模式接收的码率都不一样。在接收的过程当中,根据你所需要的码率,在服务端进行一些实时转码的工作,整个流程就完美的走通了。我们看到在这个过程当中,真正需要客户开发的只有一小点就是健全服务。剩下的可以用现成的云服务,特别是七牛的云服务来提供支持。包括我们的霹雳云直播服务。包括多码服务。这一块很多公司已经开始,用这种架构搭建他们的安防的监控平台,希望你们有类似的场景需求,希望这个东西对于你们有所启发,能够帮助你们,快速的把你们的平台搭出来。
第二个,我们想讲的比较热门的领域,就是七牛的短视频社交这个领域。其实短视频社交这个领域,照例来讲也是一个大的架构。比如现在比较热门的视频,小咖秀,它视频来源一般是来自于手机,手机录制完了之后,十秒二十秒的一个小视频,这个视频推送到服务器之后,它有两个需求,第一个需求是分享与分发的需求。第二个需求就是所谓的审查、转码需求,这类的需求,分别怎么解决掉具体的问题的呢?OK,客户端上传这边,我们遇到的最大的问题是上传成功率的问题。上传成功率主要是手机的网络不稳定,包括网络不太好,这种情况下,如果你直接把一个完整的视频上传会出现问题。这边我们提供的解决方案,就是分片上传,把一个大的数据流分到小的数据流,可以提高上传成功率。第二个是提供就近加速的节点,通过这两种方式,让他上传的成功率可以达到一个很满意的数字。第二个部分是转码,上传之后为什么转码呢?上传的格式希望统一成一个格式,第二个,播放的时候不同的客户端播放的的模式不一样。第二个有打码的需求。这个就需要一个平台来做这个事情。我这边相当于你自己都不用做。通过我们kodo等系统,可以完成视频的转码、存储的工作。这个直接在我们服务端就做好了。
第三个部分是分发在这个领域里面分发遇到的最大的问题,是覆盖率希望问题,毕竟你不希望你的客户来抱怨,第二个来讲的话,仍然跟之前的问题比较类似,大家希望以不同的码率拿到不同的码流。第一个部分,我们提供一个CPN融合的工作。整个中国甚至整个世界的覆盖率都可以达到非常漂亮的水平。包括解决掉,你的用户看不到的问题。第二个来讲的话,也是用了我们刚才视频的多种模式转码的方式,这种转码,让你的客户端,比如可以看MP4流,或者可以看到更低码流,更高码流。我们可以看到,这个解决方案里面,我们客户要做的事情也是很少,更多的是授权的工作。通过客户端的控制,你想看什么流,服务端就给什么流。极大的减少了客户的转化工作。这里的客户就比较多了,美拍、豆拍等,用这样的方式保证了客户的快速的增长。
前面我们提到了七个行业解决方案,为什么我们到今天才推出这个呢?因为我们现在,在这七个行业有足够的客户,能够提炼出这些行业里面的共性了,在这儿我们先暂停一二十秒,看这里面有没有一些你自己喜欢的应用,或者是说你们公司的应用。
最后回到七牛,你说七牛的口号也好,或者是远大的理想也好,让天下没有难写的代码,让程序员活得更有尊严一点,让七牛帮到各位程序员也好,各位创业者也好,让你们的产品更加快速更加稳定,谢谢大家。