百度陈尚义:百度应用开发平台实战之路
2019-02-26 来源:多智时代
5月20日,在第三节云计算大会分论坛二“云计算平台与应用实践”中,百度技术委员会理事长陈尚义带来了主题为《百度应用开发平台》精彩演讲。
据陈尚义介绍,百度应用开发平台(简称BADP)是面向独立应用开发者的开发和运营平台,由“应用开发引擎ADE”和“应用开放平台(AOP)”两部分组成。
ADP以网站的形式出现,开发者向该网站上传自己的应用、实现与ADP的对接;用户可免费使用其上的各种应用系统;ADP运营商通过广告实现其经济收入。ADE向广大的互联网应用开发者提供开发环境,屏蔽由于网络带来的细节问题,开发者只要专著于应用自身的逻辑。ADE具备互联网服务的基础架构,互联网服务所必须的超大容量数据处理、超大规模并发访问、设备热插拔与资源动态调度、数据一致性和安全性等重要问题均由ADE负责,开发者就像传统的单机编程那样开发自己的应用。
AOP提供一套标准接口,让用户自己开发的应用,按照AOP的标准接口实现应用与ADP的对接,从而实现应用程序的经济与社会效益。开发者可以将应用运行于自己独立的服务器,也可以将应用安装在ADP的数据中心。这样,开发者可以在不购买服务器、不需要营运资金的条件下,实现最低门槛的创新。
更多精彩演讲,即将为您播报,敬请。
以下是陈尚义的演讲实录:
我是来自百度的陈尚义,今天我的题目是百度应用开发者平台。我演讲分为三个部分:
百度认为搜索引擎是云计算的最佳实践,是到目前为止是最好的应用之一。为什么这样讲呢?我简单给大家介绍几个数字。百度搜索引擎每天接受来自全世界138个国家,4.2亿网民,每天60亿次的点击,我们收集了一千多亿网页,数据量是2PB以上。如此大的访问量,如此大的海量数据,它依靠的是什么呢?
依靠的是它背后强大的云计算平台。这是百度对云计算的观点,所谓的云计算平台,它后面是成千上万巨大的计算机资源,然后把它可视化,实时迁移,还有备份、灾难的恢复等等。
框计算和云计算不是对立的,框计算强调的是前台,如何来满足用户的需求,而云计算给框计算提出了继续的支撑。2009年百度大会的时候百度创始人李彦宏提出这个理念,搜索引擎一开始的时候,人们仅仅是为了搜索一个东西,它要求的只是满足关键字的匹配,十几年来人们对搜索引擎的依赖越来越严重,什么事情不知道,就想起了百度,一个单词不知道是什么意思,想起了百度,今天是农历几号又想起了百度,云计算是什么概念又想起了百度,甚至为什么男人比女人高,这些一些简单的问题也想起了百度。搜索引擎改变了原来的性质,不仅仅是匹配关键字,给你一个URL,而是把它当成一个百科全书,或者有智力的自然人。这种背景之下,就出现了框计算,你想搜什么就输入什么。
我们还要对你输入的东西进行分析,你想干什么,比如说切词,还要进行行为分析,你是一个历史学家,输入了三国,他就认为你是研究历史的三国,如果你是一个游戏玩家,他就会提供一个三国的游戏,你找娱乐性的,他会提供娱乐的电视剧。后面还有交互,当你说不清楚的时候,还有一个交互,最终找到你需要的。还有海量的计算,你随便打几个字,百度后面就是上亿次的计算,在0.01秒左右给你把结果呈现出来。这是框计算随着搜索引擎的变化提出来,它不仅是关键字的匹配,还可以通过关键字搜索结果,这个结果可能是某些数据,可能是某个问题的答案,可能是某一个应用,比如说杀毒,搜索框里面“杀毒”,不是找杀毒匹配的网页,而是杀毒软件直接运行,这就是框计算,框计算就是不断满足用户提供的需求。背后应对用户挑战的就是云计算。
百度有中国最大的数据中心,最大规模的海量数据,最大规模的并发访问,有人说你凭什么说你是最大的,那我们不说最大,只是说最大之一。我们建设了亚洲最大云数据中心,有最强大的云架构研发团队,团队的领头人都是在国际上做云计算方面的专家,学者型、研究型的。
我们积极参与国家云计算方面的建设,比如说中国云一期,我们承担了网络操作系统研制和互联网语言翻译系统研制。为什么需要翻译呢,你打出拼音,打一个单词,我们也可以帮你找出结果。在自然语言理解,语义分析、行为分析,还有语言翻译里面,可能有很多方面在做,但是在搜索引擎方面最有可能取得最大突破。
我们承担了北京祥云计划,还有承担国家关于云计算的项目,核高基、发展基金、863。刚刚不久被中关村云计算联盟授牌,百度是云平台提供商。我们正在开发和完善百度的开发引擎,就是App Engine,我们还有应用开放平台,你可以把你写的应用放在平台里面,这是我今天主要讲的内容。
从整个百度云计算产业链涵盖了基础硬件平台和互连网应用所有领域,我们百度正在开发如何绿色节能减排,如何自动化运维支撑,基础架构方面我们开发了云计算平台,包括BAE,在满足用户需求方面,我们有框计算的体系,在互联网应用方面,我们有搜索引擎,以及八大类60多个产品,包括百度百科、百度知道等等。
百度也是云计算的标准指定的积极参与者,百度是工信部云计算标准委员会的主要成员。在我们内部,也做了很多的工作,并取得了巨大的成果,包括标准研制,标准应用,标准验证等等。
百度BAE就是百度应用引擎,这个开发平台为开发者提供最大限度的开发环境,还最大限度降低开发者的麻烦,降低门槛,一个大学生可以没有钱买服务器,可以没有钱发展你的业务,做营销,只要你会写单机程序,就可以应用这个平台。你只要你的业务逻辑就可以了,其他事情交给百度。
百度BAE为大规模应用提供基础支撑,整合各类系统资源,提供多种分布式存储系统,事件通知等等一系列基础服务。按照软件的手段虚拟化的分配资源,你有一个应用在我们平台上面,我给你指定多少资源,这正好符合了云计算的一种理念,按需分配,按使用计费的弹性制度。你说你订购了一个一百个CPU,一百个核的CPU,你要的是一百个G的硬盘,只能分配到这儿,你超过这个容量是不可以的。同时实现资源共享和负载均衡。
支持机器计算资源自动扩展,当后台数据中心资源不够的时候,可以随时加进去机器,而且对用户来讲是透明的,这些资源动态加入进去,而且保证负载均衡。当服务器坏掉的时候,也可以减掉,不影响业务的连续性。对大规模应用提供基础支撑,为开发者提供开发环境。
提供网络运行环境的模拟环境,针对开发提供快速开发集成化的解决方案。还有通过提供一系列的工具降低开发难度,提高开发效率,最大限度降低开发成本,这些工具包含还不限于这些,包括编成框架,包括分布式服务,分布式存储不用考虑,还有开放API,以及本地的调试环境。
这是开发环境的系统结构图,左边是编程框架,编程框架提供了国际化的支持,业务流程支持,通讯机制,存储、分布式数据管理、消息队列。今天中午吃饭的时候跟一些朋友一起聊,实际开发应用平台一方面是基于百度自身业务的需要,百度不仅仅是搜索引擎,它还有八大类60几个产品,这些都是基于这个开发平台来开发的。统一机制,统一存储,统一资源调度,同时只要对外开放就可以带来重大的社会影响,包括降低开发者门槛,包括实现用户开发者和百度三方共赢,形成刚才主持人讲的绿色生态圈。
这个平台有以下几个特点:
第一,它的虚拟化将一个庞大的计算资源虚拟成一个庞大的资源池。
第二,它可以按需给服务分配资源,刚才讲过。比如说给一个制订的应用分配制订数量的CPU,比如100个核2.4GCPU。比如说制订大小的内存,制订大小的磁盘,通过分布式的调度,分布式带来最大的好处就是可靠,保证应用在平台之上,连续不断7X24小时运营。
百度BAE所具有的优势非常明显,资源抽象和资源池化,动态调度,资源分配,限制应用流量,无限水平扩展,数据动态迁移,进程间安全隔离,资源使用审计和细粒度计费。过去你的应用在平台上跑的时候,就那么几个服务器,粗粗一算你占用几个服务器进行收费,现在正在开发的功能就是按照你使用资源多少或者你使用的时间按秒计算。
我们近距离看一下BAE,这一部分搞开发的人可能更感兴趣。
百度BAE主要有五个部分组成:
第一,分布式虚拟化系统,就是中间蓝色的这块,这是执行用户逻辑代码的及其集群,它能够做到部署到同一台物理机的用户程序互不干扰。
第二,资源定位服务,你的应用可能是在资源池里面某一个地方,BAE可以准确的定位,并且触发你的应用。
第三,进程调度,它发现某些机器特别繁忙,它可以自动调配,把它集中到某个地方,或者专门进行CPU密集型进程自动安排。
第四,统一前端接入,保证我们能够软件层控制用户流量的流入和统一反攻击,保证进来的流量是干净的。
第五,分布式存储系统,这是系统中最基础的部分,存储了用户数据和用户状态。资源定位,这个就比较细节了。
进程调度就是寻找空闲机器资源运行用户程序,特别是故障发生的时候,或者是扩容的时候,或者压力锅大的时候,触发进程调度器。通过调度算法一定程度上提高机器利用率,比如说把一些小应用放在一台服务器,把IO密集型的应用进行统一管理。
分布式虚拟化系统,不同用户的进程可以部署到同一台机器,提高机器的使用率,同台机器不同帐户进程进行安全隔离。
分布式存储,满足图片、视频、文档等多媒体大文件存储的需要,随着互联网的基础设施不断的发展和完善,随着智能终端,像智能手机不断的普及,人们越来越多的使用了多媒体的信息,照片、音频、视频,这样一些多媒体的信息,现在上传的手段越来越方便。过去没有这么好的智能终端,而且带宽也不允许你这么做,现在的情况改变了。这个改变带来了互联网巨大的改变,过去互联网绝大部分是文本文件,因为它小,好传,现在大量的图片信息,音频、视频信息,互联网的内容发生了急剧的变化。写字和写文章是要动脑筋的,照片是不需要动脑筋,这更符合媒体的习惯,会带来爆发式发展。如果应对这个爆发式增长,就是分布式存储系统。还提供文件访问权限管理、目录管理和分享,还有大数据瞬间上传。大数据上传需要花费很多的带宽和时间的,如果已经有了就可以瞬间 上传。还有支持大文件的断点续传。
BAE另外一个角度去看,上面是多语言恩编成框架,开发者可以使用你所喜欢的语言编写你的程序应用,上载到分布式的runtime里面去。Rutime在运行用户程序的时候,通过RPC机制调用消息队列,云存储、缓存等等。
指标方面能够处理超大规模的海量CPU,超大规模的内存和磁盘。
BAE的诞生一方面是为了满足几十款产品的需要,同时它是一个完全开放的系统,高安全、通用的平台。
现在百度每天接受世界138个国家,4点几亿网民,六十亿的点击,都是这个平台支撑。
开放平台首先是开放的,向全社会开放,其次它是一个应用平台,你已经有应用了,可以把它划到度的平台之上。刚才讲的是开发,BAE应用是可以通过百度的BAE开发的,也可以是不通过百度的BAE开发的。
说到百度的开发平台,首先说一下框计算,我以前觉得框计算很土,后来我觉得它博大精深。
这是基于框计算的搜索引擎框架,原来搜索引擎就是搜索到匹配到关键词的信息而已,现在用户需求多了,希望值也高了,于是在这种背景之下,百度提出了框计算。
咱们看一下这个图,最上面是用户,用户的需求通过浏览器来表达,浏览器根据需求进行分析,刚才我讲了有语义的,有行为的,还有人机计算,把你的需求搞清楚之后,交给四个引擎:
第一个引擎,是数据开放平台,今天没有时间讲了,这是一个非常重要的功能,包括百度知道,百科全书。第二个引擎,是百度应用开放平台。第三个引擎,是传统的搜索引擎,原来该怎么搜还是怎么搜。第四个引擎,就是富媒体平台。
这四个平台分别找到工作之后进行整合。把结果呈现给用户,呈现方式有两种,如果是数据就完整的展现,另外就是应用,比如说杀毒,它是运行,而不是简单的展示,上面有按钮,你可以下指令。
最左边是需求,需求通过百度的框输入进去,然后交给四个引擎,然后奋发蹈应用仓库,你的需求通过我们分析引擎的分析找到应用,把应用呈现在你面前,在你搜索结果里面直接运行,不要你再点击进去,然后再下载。
这里面通过开放平台,通过蓝色的开放平台把你的应用放进去,但是你的条件就是你的应用必须符合开放平台的规范。这块其实很简单。
应用开放平台有两个主要的功能:
第一个,接入,你的应用怎么跟百度发生关系。
1、标准的标准接口、说明书、帮助手册,帮助你接入百度的平台。
2、审核机制,不是所有应用都可以上的,应该是开放的,但是黄色、反动、暴力得不行,我们提供一个审核机制,保证到百度平台里面的应用都是健康的。
3、支付体系,搭建商业服务平台,探索最新的商业合作模式。百度商业合作模式有两个,一是按需计费,二是按流量收费,未来还有新的模式,比如说百度币,在线支付,在线购买。
4、应用稳定性和合法性的监控与应对体系,保证应用的合法与稳定可用。一旦发现你的机制有问题,采取预案,自动隔离,避免你和百度发生关联。
第二个,用户体验和服务,多通道的展现,刚才我讲了大量的找应用,通过应用分析找到应用,这只是一种方式,还有一种方式是通过百度开放平台的独立网站,这个独立网站大家可以记一下,app.baidu.com。这个平台不限于百度产品线,我们有1万多个,这个带来了40亿次的使用。多种用户反馈渠道,搭建起用户和开发者的沟通桥梁,获得最大的收益。还为用户推荐可能需要或者喜欢的应用,提高应用展示度和用户需求满足度。
它给你推荐一些东西,基于你过往搜索行为的分析,对于开发者来讲,增加它的影响面。构建反作弊系统,保证平台的稳定性和商业收益的合理性,研究用户数据挖掘引擎,从海量用户数据中发现有价值的信息。研究用户数据挖掘引擎,从海量用户数据中发现有价值的信息。
下面介绍一下框计算,过去你打开浏览器,输入百度网址,输入天气两个字,所收到的结果就是一系列的天气方面的文字信息,还有一些链接,还有一些URL的页面。现在不是,根据你输入的位置和时间,他把今天天气告诉你,而且把未来几天的天气预报也告诉你,紧跟着后面的才是符合关键字匹配链接的信息。你输入“天气预报”也是这样的。如果哪一天有一个电视剧也叫《天气》,如果这个电视剧很热门的话,就会出现一个《天气》电视剧,动态满足你的要求。
工作方面,其实工作学习各个方面越来越离不开搜索引擎,找工作、投简历,还有学习英文单词,学习数学,都可以用百度搜索引擎。现在找工作,一站式,不仅仅呈现发布的信息,而且告诉你这个信息什么时候发布,跟它相关的工作有什么,它的工作描述是什么,它有没有过期。
今天想讲的内容其实很多,最后做一个简单的总结。
百度在云计算方面实际上是国内最大的互联网公司,意味着它将有最大的云计算公司,拥有最大的数据中心,最大的海量数据资源,最大的并发访问,依靠的都是背后的云基础设施、云基础架构,我们正在计划筹建亚洲最大的云计算中心IDC,POA的值有望达到1.3以下。百度积极响应国家的号召,积极参与国家的建设。
框计算不仅加速了云计算的发展,更多的是带来了互联网的机会。开放应用平台最大限度了开发者的门槛,极大的鼓励了社会上的创新,营造绿色的生态圈。
在不久的将来,云计算一定会彻底走入我们的生活,有兴趣入行未来前沿产业的朋友,可以收藏云计算,及时获取人工智能、大数据、云计算和物联网的前沿资讯和基础知识,让我们一起携手,引领人工智能的未来!
标签: idc 安全 大数据 代码 服务器 工信部 购买服务器 互联网 互联网服务 互联网公司 开发者 买服务器 媒体 权限 权限管理 搜索 搜索引擎 搜索引擎框架 网
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
下一篇:CIO该如何部署数据中心的“云”