关于BAE

云环境提供多语言、弹性的服务端运行环境,能帮助开发者快速开发并部署应用。云环境内置丰富的分布式计算API,并支持全方位的百度“云”服务,更能为您的应用带来强大动力,从“本地”“分布式”,简单可依赖。

对您来说,一切都无需再从零做起,云环境可以:

  • ”您的成本
不用再为服务器是“多余”还是“不足”而苦恼,也不用再为托管和带宽花很大的成本但享受低劣的服务而愤怒,按需选择。
  • ”您做运维
从资源到架构,全面专业的运维服务为应用护航。
  • ”您专注创新,有所成就
简单、安全,帮您聚焦目标,成就未来。

背景

云环境基于百度基础架构/技术建立,自2012年3月起对外开放,之前一直服务于百度的内部产品线,并支撑着Hao123百度音乐百度搜索风云榜百度指数百度分享百度翻译百度浏览器百度输入法等众多大型互联网产品/服务。

云环境在架构上分为执行环境、管理系统和服务接入三大部分。

基本概念

  • 执行单元:执行单元是云环境里面运行用户代码的最小服务实例。
  • 执行组:若干执行单元组成的集合。同一个执行组内的不同执行单元的环境是同构的。执行组内执行单元个数会根据实际负载自动调整,但会受到系统阈值的限制或用户配额的限制。
  • 执行环境:云环境中应用程序执行的环境。执行环境由执行组组成,每个执行组包含执行单元。执行环境分为公共集群和私有集群。
  • 公共集群:指属于云环境系统的执行组的集合。云环境会保证公共集群里面不同用户不同应用之间代码和数据的安全隔离。公有集群对用户来说是完全透明的。
  • 私有集群:完全属于用户自己的执行组的集合。用户可以选择自己应用的代码部署到自己拥有的任意执行组内。私有执行组内的执行单元不会和其它用户共享。

执行环境

应用程序执行的环境。执行环境由执行组组成,每个执行组包含执行单元,从资源分配模式上来说分为公共集群和私有集群,从架构上设计为三层:接入层、代码执行层及数据层。

  • 接入层:HTTP反向代理,实现将应用流量分配到指定后端的功能,并能够在多个可选后端中进行负载均衡。除此之外,它还具有防火墙功能。
  • 代码执行层:实际运行用户代码的地方,计算资源分组管理。执行组的处理能力由它包含的执行单元个数决定,可以根据需求动态伸缩。执行组目前分为公共和私有两种,私有组中的资源为用户独享,稳定性更强。执行单元本身是一个沙盒环境,保证不同应用之间的代码、数据以及执行都不会相互影响。目前执行环境支持PHP、Java和Python语言。
  • 数据层:用于存储用户的代码和一些临时数据。

系统管理

  • 调度服务:负责控制执行环境接入层的流量分发和负载均衡策略、应用代码在数据层的分发以及代码执行层计算容量的自动伸缩。
  • 监控服务:将系统各个模块、执行单元的状态实时汇报给状态中心,作为调度服务决策的依据。
  • 资源审计服务:负责统计并控制应用对资源的访问。公共组会根据用户使用所有服务的具体使用量来进行统计和计费,如:页面流量、CPU使用量、内存使用量等。私有组以对执行单元的使用时间来进行统计。

服务接入

  • 分布式计算API:FetchURL(网页抓取)、TaskQueue(任务队列)、Cache(缓存)、Cron(定时任务)、MySQL(数据库)、Rank(排行榜)、Counter(计数器)等
  • 百度“云”服务:云存储、云消息、云推送、云触发等。

安全

  • 用户代码安全:保证应用之间的代码隔离,除了正在处理该应用请求的服务进程本身,其它用户不能访问应用代码。即一个应用不能访问另外一个应用的代码,系统的其它账号也不能访问应用的代码。
  • 用户数据安全:保证应用之间的数据隔离,除了正在执行该应用请求的服务进程本身,其它用户不能访问应用数据;即一个应用不能访问另外一个应用的数据,系统的其它用户也不能访问应用的数据。这些数据包括用户生成的Cache文件、临时文件等。
  • 执行安全:保证用户之间请求的执行不会相互干扰。比如一个应用的请求出现错误不会导致另外一个请求出错。

目标

未来会在快速支持新语言及第三方框架,支持本地写、服务可配置等方面集中提高,致力于为广大开发者打造最好用的云计算平台。

关于BAE》有 1 条评论

  1. Era 说:

    呵,百度BAE可是好东西啊。

发表评论