分享

应用引擎BAE3.0介绍及百度BAE3.0支持并发多少

hyj 发表于 2013-12-31 01:13:32 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 0 12434
百度云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执行单元压测数据
并发304050100150300
qps87410201078113411401058
请求数213794209581341982276669165076247589
2xx时延1ms1ms3ms11ms29ms112ms
4xx数量000000
5xx数量000002
error数量735155576045
宿主机idle40%40%35%'50%30%30%
宿主机load average212421703022
网络带宽4M4M5M6M5M6.5M
Php runtime 仅仅针对phpinfo() 页面进行相关压测,没有用到任何扩展服务,因此实际情况可能低于此值。php 执行单元压测数据
php cgi 数:50
并发30405080100
qps1125111014541308425
请求数11756916113115359219764068263
2xx时延1ms1ms1ms1ms30ms
4xx数量00000
5xx数量00000
error数量403001767154828
error几率0.03%0.18%0.11%0.36%7%
宿主机idle40%20%20%5%1%
宿主机load average17233647120
网络带宽200k350k476k420k180k
Python runtime 由于压测的只是一个最简单的helloworld页面,没有用到任何扩展服务,因此实际情况可能低于此值。python 执行单元压测数据
cgi 数:50
并发405080
qps859864916
请求数136719146709142883
2xx时延4ms5ms6ms
4xx数量000
5xx数量5312
error数量2872
error几率0%0%0.05%
宿主机idle33%25%30%
宿主机load average14.8918.6219.75
网络带宽240k280k220k
Java runtime 此次压测只测试了一个最简单的index.jsp 页面,没有用到任何扩展服务,因此实际情况可能低于此值。java 执行单元压测数据
并发304050100150
qps337482529536872
请求数45612653167087674920108868
2xx时延4ms4ms5ms37ms80ms
4xx数量00000
5xx数量000043318
error数量127111219
宿主机idle10%10%10%'5%5%
宿主机load average5562637063
网络带宽1M2M5M6M5M

注释:
执行单元套餐
在创建BAE部署的时候,您可以根据实际情况选择执行单元的“套餐类型”;也可以在应用上线后,根据访问量随时调整“套餐类型”,从而提高资源利用率。其实这里可以理解为一个宽带的选择,如果一个单元不行,选多个单位即可理解为,如果流量太小,扛不住,就选择流量大的。
执行单元

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



来自群组: hadoop技术组

没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条