SAE平台为每个App支持几乎所有MySQL的特性。目前支持MyISAM引擎,暂不支持InnoDB。需要注意的是SAE的数据库需要显式开启或者禁用。您还可以通过phpmyadmin来创建数据库和数据表。SAE的PHP环境提供了标准的MYSQL,MYSQLI和PDO模块(基于MySQLnd),您可以直接使用这三个模块来操作您的数据库, 您可以使用预定义常量来连接数据库,我们不排除未来可能调整数据库端口,使用预定义常量能够避免这样的问题。当然SAE也提供了SaeMysql类,我们也推荐您使用这个类来操作MySQL资源。
服务限制
限制 | 相关错误信息 | 数值 |
单表的最大行数 | Table too many rows | 10 000 000 行 |
库的最大表数量 | Too many tables | 512个 |
不支持的存储引擎类型 | Not support table type | memory temporary |
最大外排序的行数 | Filesort on too many rows | 65536 行 |
最大无索引的操作行数 | 无 | 100 000 行 |
查询的最大操作行数 | Select on too many rows | 1 000 000 行 |
更新的最大操作行数 | Update on too many rows | 1 000 000 行 |
删除的最大操作行数 | Delete on too many rows | 1 000 000 行 |
创建索引时允许的表的最大行数 | Create index on big table | 500 000 行 |
修改表结构时允许的表的最大行数 | Alter table on big table | 500 000 行 |
SQL并发执行时间和(读库) | Operations take too much time cost | 500 000 毫秒 |
SQL并发执行时间和(写库) | Operations take too much time cost | 200 000 毫秒 |
警报阈值百分比 | 无 | 80% |
表主键及聚簇索引奖励系数 | 无 | 1024 倍 |
MySQL慢查询配额
SQL执行时间超过1秒,即为慢查询,其分钟配额为
条目数 10
累计执行时间 30秒
扫描行 1,000,000
分钟配额
运行在SAE上的应用(App)将会消耗平台资源,为保证各App不互相影响,我们引入了分钟配额的概念,即:在每分钟内每个应用的各个服务所消耗的 资源的速度。比如,当平台中的某个应用的MySQLl服务一分钟内累计请求数达到20万,或者流出宽带超过600M,或者累计CPU执行时间超过400s,我们将会立即禁掉该应用的MySQL服务,禁用五分钟后,恢复会自动恢复,避免影响到SAE平台的稳定性。服务因为超过“分钟配额”而被禁用时,会在“服务状态”看到该服务被禁用的原因。
注意:表中红色配额值是自2011-11-3号,即SAE两周年起开始执行的新配额值,旧配额值将不再采用。
服务 | 请求数 | cpu时间 | 流入流量 | 流出流量 |
HTTP | 200,000=>500,000 | 300s=>600s | 300MB=>1500MB | 300MB=>1500MB |
HTTPS | 50,000=>1,000,000 | 50s=>100s | 10MB=>100MB | 10MB=>100MB |
MySQL | 200,000 | 400s=>600s | 300MB=>600MB | 600MB=>1200MB |
Memcache | 300,000 | NA | 150MB=>300MB | 150MB=>300MB |
Fetchurl | 50,000=>100,000 | NA | 100MB=>200MB | 100MB=>200MB |
Image | 5,000 | 300s | 150MB | 150MB |
Storage | 5,000 | NA | 50MB=>80MB | 400MB |
50=>500 | NA | 20MB | 20MB | |
Cron/offset | 50 | 50s | 1MB | 1MB |
Cron/nooffset | 200 | 30s=>60s | 5MB | 5MB |
TaskQueue | 20,000=>40,000 | 60s=>100s | 10MB=>20MB | 10MB=>20MB |
VerifyCode | 100 | 4s | 2MB | 2MB |
KVDB | 150,000=>300,000 | NA | 150MB=>300MB | 150MB=>300MB |
容量配额
容量配额是针对MySQL\Storage\MemCache设置的,是指用户能够使用的磁盘或内存的最大限制(见下表),其中Memcache的最大容量配额是用户自己在初始化Memcache时设置的,可设置的范围是1M~256M。
服务 配额
MySQL 5G
Storage 10G*
KVDB 100G
*每个App允许建立5个Storage domain 每个domain为2G
不明白表主键及聚簇索引奖励系数1024倍是什么意思呢?
回复删除表主键及聚簇索引奖励系数1024倍是什么意思呢?
回复删除