百度云BAE3.0的特点:
1.支持本地程序迁移百度云
应用引擎BAE3.0做了很多的改进,其实就是一句话,百度云开发在不断的进步。为了节省开发者的学习成本,百度云BAE3.0增加了轻量级虚拟机,使开发环境和本地环境一致,是本地开发可以直接迁移到百度云上。
2.支持多种编程语言

目前PHP、Python、Java、Node.js,以后还会陆续增加对主流开发语言的支持。此外将来开发者还可以自定义运行环境。
3.支持数据库
在BAE3.0里面继续可以使用,如MySQL、MongoDB、Redis、Cache、Image等等。

4.支持的操作系统

Ubuntu 12.04 Server

轻量虚拟机内部,我们采用的是64位的 Ubuntu 12.04 Server。资源配额

每个轻量虚拟机都具有一定的资源配额,应用如果使用了超过配额的资源,就可能出现不可预期的错误。例如疯狂分配内存,大量占用磁盘空间等等。
    • 内存: 默认 256M;可通过套餐来调整大小
    • 磁盘: 2G
    • CPU: 与其它轻量虚拟机分享CPU
    • 网络: 流入5Mbytes/秒;流出5Mbytes/秒

执行单元压测

以下是对现有的几种 语言环境 进行压力测试的基础数据,压测基于256M内存的执行单元,开发者可参考如下测试数据,以了解BAE3.0中执行单元的抗压能力。

Nodejs runtime 由于压测的只是一个最简单的helloworld页面,没有用到任何扩展服务,因此实际情况可能低于此值。nodejs执行单元压测数据

并发 30 40 50 100 150 300
qps 874 1020 1078 1134 1140 1058
请求数 213794 209581 341982 276669 165076 247589
2xx时延 1ms 1ms 3ms 11ms 29ms 112ms
4xx数量 0 0 0 0 0 0
5xx数量 0 0 0 0 0 2
error数量 73 51 55 57 60 45
宿主机idle 40% 40% 35%' 50% 30% 30%
宿主机load average 21 24 21 70 30 22
网络带宽 4M 4M 5M 6M 5M 6.5M

Php runtime 仅仅针对phpinfo() 页面进行相关压测,没有用到任何扩展服务,因此实际情况可能低于此值。php 执行单元压测数据

php cgi 数: 50        
并发 30 40 50 80 100
qps 1125 1110 1454 1308 425
请求数 117569 161131 153592 197640 68263
2xx时延 1ms 1ms 1ms 1ms 30ms
4xx数量 0 0 0 0 0
5xx数量 0 0 0 0 0
error数量 40 300 176 715 4828
error几率 0.03% 0.18% 0.11% 0.36% 7%
宿主机idle 40% 20% 20% 5% 1%
宿主机load average 17 23 36 47 120
网络带宽 200k 350k 476k 420k 180k

Python runtime 由于压测的只是一个最简单的helloworld页面,没有用到任何扩展服务,因此实际情况可能低于此值。python 执行单元压测数据

cgi 数: 50    
并发 40 50 80
qps 859 864 916
请求数 136719 146709 142883
2xx时延 4ms 5ms 6ms
4xx数量 0 0 0
5xx数量 5 3 12
error数量 2 8 72
error几率 0% 0% 0.05%
宿主机idle 33% 25% 30%
宿主机load average 14.89 18.62 19.75
网络带宽 240k 280k 220k

Java runtime 此次压测只测试了一个最简单的index.jsp 页面,没有用到任何扩展服务,因此实际情况可能低于此值。java 执行单元压测数据

并发 30 40 50 100 150
qps 337 482 529 536 872
请求数 45612 65316 70876 74920 108868
2xx时延 4ms 4ms 5ms 37ms 80ms
4xx数量 0 0 0 0 0
5xx数量 0 0 0 0 43318
error数量 12 7 11 12 19
宿主机idle 10% 10% 10%' 5% 5%
宿主机load average 55 62 63 70 63
网络带宽 1M 2M 5M 6M 5M

注释:
执行单元套餐

在创建BAE部署的时候,您可以根据实际情况选择执行单元的“套餐类型”;也可以在应用上线后,根据访问量随时调整“套餐类型”,从而提高资源利用率。其实这里可以理解为一个宽带的选择,如果一个单元不行,选多个单位即可理解为,如果流量太小,扛不住,就选择流量大的。
执行单元
每个BAE部署由一个或多个“执行单元”组成。执行单元是一个抽象的概念,每个执行单元实际是由一组进程组成;例如一组lighttpd + php-fpm 进程组成了 php-web执行单元。对于一个WEB应用来说,随着访问量的上升,一个基础执行单元很可能扛不住压力。那么可以通过增加执行单元个数进行“水平扩展”,或者增大执行单元配置如内存进行“垂直扩展”,从而轻松应对压力。假设有一个“BAE部署”百度云BAE3.0的特点:
1.支持本地程序迁移百度云
应用引擎BAE3.0做了很多的改进,其实就是一句话,百度云开发在不断的进步。为了节省开发者的学习成本,百度云BAE3.0增加了轻量级虚拟机,使开发环境和本地环境一致,是本地开发可以直接迁移到百度云上。
2.支持多种编程语言

目前PHP、Python、Java、Node.js,以后还会陆续增加对主流开发语言的支持。此外将来开发者还可以自定义运行环境。
3.支持数据库
在BAE3.0里面继续可以使用,如MySQL、MongoDB、Redis、Cache、Image等等。

4.支持的操作系统

Ubuntu 12.04 Server

轻量虚拟机内部,我们采用的是64位的 Ubuntu 12.04 Server。资源配额

每个轻量虚拟机都具有一定的资源配额,应用如果使用了超过配额的资源,就可能出现不可预期的错误。例如疯狂分配内存,大量占用磁盘空间等等。
    • 内存: 默认 256M;可通过套餐来调整大小
    • 磁盘: 2G
    • CPU: 与其它轻量虚拟机分享CPU
    • 网络: 流入5Mbytes/秒;流出5Mbytes/秒

执行单元压测

以下是对现有的几种 语言环境 进行压力测试的基础数据,压测基于256M内存的执行单元,开发者可参考如下测试数据,以了解BAE3.0中执行单元的抗压能力。

Nodejs runtime 由于压测的只是一个最简单的helloworld页面,没有用到任何扩展服务,因此实际情况可能低于此值。nodejs执行单元压测数据

并发 30 40 50 100 150 300
qps 874 1020 1078 1134 1140 1058
请求数 213794 209581 341982 276669 165076 247589
2xx时延 1ms 1ms 3ms 11ms 29ms 112ms
4xx数量 0 0 0 0 0 0
5xx数量 0 0 0 0 0 2
error数量 73 51 55 57 60 45
宿主机idle 40% 40% 35%' 50% 30% 30%
宿主机load average 21 24 21 70 30 22
网络带宽 4M 4M 5M 6M 5M 6.5M

Php runtime 仅仅针对phpinfo() 页面进行相关压测,没有用到任何扩展服务,因此实际情况可能低于此值。php 执行单元压测数据

php cgi 数: 50        
并发 30 40 50 80 100
qps 1125 1110 1454 1308 425
请求数 117569 161131 153592 197640 68263
2xx时延 1ms 1ms 1ms 1ms 30ms
4xx数量 0 0 0 0 0
5xx数量 0 0 0 0 0
error数量 40 300 176 715 4828
error几率 0.03% 0.18% 0.11% 0.36% 7%
宿主机idle 40% 20% 20% 5% 1%
宿主机load average 17 23 36 47 120
网络带宽 200k 350k 476k 420k 180k

Python runtime 由于压测的只是一个最简单的helloworld页面,没有用到任何扩展服务,因此实际情况可能低于此值。python 执行单元压测数据

cgi 数: 50    
并发 40 50 80
qps 859 864 916
请求数 136719 146709 142883
2xx时延 4ms 5ms 6ms
4xx数量 0 0 0
5xx数量 5 3 12
error数量 2 8 72
error几率 0% 0% 0.05%
宿主机idle 33% 25% 30%
宿主机load average 14.89 18.62 19.75
网络带宽 240k 280k 220k

Java runtime 此次压测只测试了一个最简单的index.jsp 页面,没有用到任何扩展服务,因此实际情况可能低于此值。java 执行单元压测数据

并发 30 40 50 100 150
qps 337 482 529 536 872
请求数 45612 65316 70876 74920 108868
2xx时延 4ms 4ms 5ms 37ms 80ms
4xx数量 0 0 0 0 0
5xx数量 0 0 0 0 43318
error数量 12 7 11 12 19
宿主机idle 10% 10% 10%' 5% 5%
宿主机load average 55 62 63 70 63
网络带宽 1M 2M 5M 6M 5M

注释:
执行单元套餐

在创建BAE部署的时候,您可以根据实际情况选择执行单元的“套餐类型”;也可以在应用上线后,根据访问量随时调整“套餐类型”,从而提高资源利用率。其实这里可以理解为一个宽带的选择,如果一个单元不行,选多个单位即可理解为,如果流量太小,扛不住,就选择流量大的。
执行单元
每个BAE部署由一个或多个“执行单元”组成。执行单元是一个抽象的概念,每个执行单元实际是由一组进程组成;例如一组lighttpd + php-fpm 进程组成了 php-web执行单元。对于一个WEB应用来说,随着访问量的上升,一个基础执行单元很可能扛不住压力。那么可以通过增加执行单元个数进行“水平扩展”,或者增大执行单元配置如内存进行“垂直扩展”,从而轻松应对压力。假设有一个“BAE部署”,分配了两个“执行单元”,每个“执行单元”对应一个“轻量虚拟机”, “执行单元”是抽象概念,它启动后,对应着“轻量虚拟机”里面的一组进程,包括 lighttpd 和 php-fpm 进程等。当“轻量虚拟机”出现故障后,BAE平台会自动为它重新分配一个轻量虚拟机,并将“执行单元”部署到新的轻量虚拟机上,这就是“执行单元”的迁移。这种技术保证了应用的高可靠性。当应用流量上升,两个“执行单元”不够用的时候,可以再增加新的轻量虚拟机,并部署“执行单元”,这就是“执行单元”的扩容。这种技术保证了应用的可扩展性。

,分配了两个“执行单元”,每个“执行单元”对应一个“轻量虚拟机”, “执行单元”是抽象概念,它启动后,对应着“轻量虚拟机”里面的一组进程,包括 lighttpd 和 php-fpm 进程等。当“轻量虚拟机”出现故障后,BAE平台会自动为它重新分配一个轻量虚拟机,并将“执行单元”部署到新的轻量虚拟机上,这就是“执行单元”的迁移。这种技术保证了应用的高可靠性。当应用流量上升,两个“执行单元”不够用的时候,可以再增加新的轻量虚拟机,并部署“执行单元”,这就是“执行单元”的扩容。这种技术保证了应用的可扩展性。

应用引擎BAE3.0介绍及百度BAE3.0支持并发多少的更多相关文章

  1. Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍

    Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...

  2. DRDS分布式SQL引擎—执行计划介绍

    摘要: 本文着重介绍 DRDS 执行计划中各个操作符的含义,以便用户通过查询计划了解 SQL 执行流程,从而有针对性的调优 SQL. DRDS分布式SQL引擎 — 执行计划介绍 前言 数据库系统中,执 ...

  3. Python下Tesseract Ocr引擎及安装介绍

    1.Tesseract介绍 tesseract 是一个google支持的开源ocr项目,其项目地址:https://github.com/tesseract-ocr/tesseract,目前最新的源码 ...

  4. SpringBootSecurity学习(14)前后端分离版之 OAuth2.0介绍

    登录总结 前面基本介绍了security的常规用法,同时介绍了JWT和它的一个简单实现,基本上开发中遇到的登录问题都能解决了,即使在分布式开发,或者微服务开发中实现登录也基本没有问题了.securit ...

  5. 开源组件编排引擎LiteFlow发布里程碑版本2.5.0

    介绍 LiteFlow作为一款轻量级组件编排框架,自开源来,获得了挺多人的关注.社区群也扩展到了接近200人. 早期版本因为疏忽打理,有一些BUG,迭代也不及时.距离上一个稳定版本2.3.3,已经有超 ...

  6. [MySQL数据库之表的详细操作:存储引擎、表介绍、表字段之数据类型]

    [MySQL数据库之表的详细操作:存储引擎.表介绍.表字段之数据类型] 表的详细操作 存储引擎 mysql中建立的库======>文件夹 库中建立的表======>文件 用来存储数据的文件 ...

  7. ASP.NET 5 已死 - 隆重介绍 ASP.NET Core 1.0 和 .NET Core 1.0

    还没正式登场就死了?不能怪我标题党,是大神Scott在他博客上这么说的,我只是翻译了一下. 在1月20号最新的ASP.NET Community Standup视频中,微软aspnet开发组的大帅哥 ...

  8. 开源任务管理平台TaskManagerV2.0介绍及升级说明

    上一篇开源任务管理平台TaskManager介绍发布后,有网友联系我看看能不能做个后台管理界面,方便管理系统中所有的任务.由于时间和技术问题1.0版本的时候,新增了一个3分钟读取配置文件动态修改任务的 ...

  9. 开放平台鉴权以及OAuth2.0介绍

    OAuth 2.0 协议 OAuth是一个开发标准,允许用户授权第三方网站或应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的内容. OAuth 2.0 ...

随机推荐

  1. python27读书笔记0.1

    --Notes: 测试环境:Windows ,python 2.7.3,python 自带的IDLE #-*- coding: utf-8 -*- # First Lesson# --- Line s ...

  2. C语言中‘\n'为什么能表示CRLF两个字节

    为什么要说这个简单的问题? 众所周知,在Windows下文本文件的换行符是CRLF,占两个字节.在Unix下是LF,占一个字节.(还有奇葩的Mac是CR).但是C语言中直接printf一个 ‘\n’, ...

  3. CSS3实战:让我们尽情的圆角吧

    如果说,WAP2.0网页的机型.浏览器适配给我们无线制作经理造成了巨大的心理 阴影,那么从iPhone.Android这些高端手机应用 起,我们终于可以庆幸比其他同行提 前迎来了一个新时代,这两种高端 ...

  4. web中自定义鼠标样式

    实现一个功能:鼠标移动到一个图片左边显示左箭头,移动到右边显示右箭头. 实现方法:一个img上面定位两个div,div的样式如下: .toleft { width: 200px; height: 30 ...

  5. Computer Vision的尴尬---by林达华

    Computer Vision的尴尬---by林达华 Computer Vision是AI的一个非常活跃的领域,每年大会小会不断,发表的文章数以千计(单是CVPR每年就录取300多,各种二流会议每年的 ...

  6. csuoj 1350: To Add Which?

    这个题目其实很简单,可惜当时比赛的时候看到出的人少,以为有trick,就和队友扯淡去了: 因为每个数总是被相邻的数影响,所以往前往后扫两遍就行了: #include<cstdio> #in ...

  7. HDU4521+线段树+dp

    题意:在一个序列中找出最长的某个序列.找出的序列满足题中的条件. 关键:对于 第 i 个位置上的数,要知道与之相隔至少d的位置上的数的大小.可以利用线段树进行统计,查询.更新的时候利用dp的思想. / ...

  8. [jobdu]二叉树的镜像

    树的镜像,这里的做法就是先序遍历的反过来呗. #include <iostream> #include <vector> using namespace std; void p ...

  9. Using FireMonkey Layouts

    FireMonkey has many layout controls to choose from. Come learn the differences and how to use them t ...

  10. dojo.hitch 原理

    在使用dojo的时候,遇到dojo.hitch这个函数 ,官方文档说的很清楚,将函数和作用域绑定起来,这让我想起了call和apply这两个函数,call和apply用于改变一个方法的执行上下文,JS ...