GAE, Google App Engine, 基于 Google 的基础架构运行您的网络应用程序。使您可以在支持 Google应用程序的同一可扩展系统上构建网络应用程序。使用GAE
- 注册
- 下载开发包
- 编写代码
application: helloworld
version: 1
runtime: python
api_version: 1
handlers: - url: /.*
script: helloworld.py
GAE的一些限制
- 项目不能创建套接字以及向文件写入
- 项目只能用Python编写,具有C代码的扩展不被支持
- 因此Python标准库中的一些模块被禁用,包括socket, select, tempfile等等
- 项目只能通过google.appengine.api.urlfetch包向端口80和443上的其他主机发出HTTP或HTTPS请求,不过项目可以使用urllib,urllib2, httplib
- 项目不能产生子进程或线程,必须在约30秒钟内于单个进程中处理对应用程序的网络请求。
GAE API介绍
关于配额
- GAE提供免费和付费两种级别的配额,当程序使用的资源超过配额时,将会抛出apiproxy_errors.OverQuotaError异常
- GAE提供google.appengine.api.quota来查看项目已经占用了多少配额
- Request方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
访问次数 | 1,300,000次访问 | 7,400次访问/分钟 | 43,000,000次访问 | 30,000次访问/分钟 |
上行带宽 (按量收费, 包括HTTPS) | 1 Gbyte | 56 Mbytes/分钟 | 1 Gbyte免费; 最大1,046 Gbytes | 740 Mbytes/分钟 |
下行带宽 (按量收费, 包括HTTPS) | 1 Gbyte | 56 Mbytes/分钟 | 1 Gbyte免费; 最大1,046 Gbytes | 740 Mbytes/分钟 |
CPU时间 (按量收费) | 6.5 CPU小时 | 15 CPU分钟/分钟 | 6.5 CPU小时免费; 最大1,729 CPU小时 | 72 CPU分钟/分钟 |
数据存储API
- GAE提供了专门的类似数据库的数据存储空间,通过google.appengine.ext.db进行访问
- 该数据库提供一种类似SQL的GQL查询语言,并支持事务
- 该数据库不是关系数据库,数据库中的数据对象称为实体,实体有一个唯一标识该实体的键,并有一个或多个属性
- 可以使用index.yaml向数据库定义索引
- 数据存储方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
数据存储API调用次数 | 10,000,000次调用 | 57,000次调用/分钟 | 140,000,000次调用 | 129,000次调用/分钟 |
存储数据量 (按量付费) | 1 Gbyte | 无 | 1 Gbytes免费; 无上限 | 无 |
API调用传输数据量 | 12 Gbytes | 68 Mbytes/分钟 | 72 Gbytes | 153 Mbytes/分钟 |
API返回传输数据量 | 115 Gbytes | 659 Mbytes/分钟 | 695 Gbytes | 1,484 Mbytes/分钟 |
CPU时间 | 60 CPU小时 | 20 CPU分钟/分钟 | 1,200 CPU小时 | 50 CPU分钟/分钟 |
- 数据存储方面的其他限制
限制 | 量 |
---|
最大实体大小 | 1 Mbyte |
一个索引中不同的值的最大个数 | 1,000 |
一次批量put或delete最大的实体数量 | 500 |
一次批量get最大的实体数量 | 1,000 |
每次获取查询结果时最大实体数量 | 1,000 |
图像API
- GAE提供google.appengine.api.images进行图片的缩放、旋转、翻转、裁剪等处理
- 图像方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
图像API调用次数 | 864,000次调用 | 4,800次调用/分钟 | 45,000,000次调用 | 31,000次调用/分钟 |
API调用传输数据量 | 1 Gbytes | 5 Mbytes/分钟 | 560 Gbytes | 400 Mbytes/分钟 |
API返回传输数据量 | 5 Gbytes | 28 Mbytes/分钟 | 427 Gbytes | 300 Mbytes/分钟 |
执行变换 | 2,500,000次变换 | 14,000次变换/分钟 | 47,000,000次变换 | 32,000次变换/分钟 |
- 图像方面的其他限制
限制 | 量 |
---|
调用API的图片最大大小 | 1 Mbyte |
从API返回的图片最大大小 | 1 Mbyte |
邮件API
- GAE提供google.appengine.api.mail进行邮件发送,发件人可以是注册管理员的电子邮件地址或当前登录用户的电子邮件地址
- 附件的类型可以是bmp, css, csv, gif, htm, html, jpeg, jpg, jpe, pdf,png, rss, text, txt, asc, diff, pot, tiff, tif, wbmp, ics, vcf
- 邮件方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
邮件API调用次数 | 7,000次调用 | 32次调用/分钟 | 1,700,000次调用 | 4,900次调用/分钟 |
发给不同收件人数量 (按量收费) | 2,000个收件人 | 8个收件人/分钟 | 2,000个收件人免费;最多7,400,000个收件人 | 5,100个收件人/分钟 |
管理员发邮件数量 | 5,000封 | 24封/分钟 | 3,000,000封 | 9,700封/分钟 |
邮件内容数据量 | 60 Mbytes | 340 Kbytes/分钟 | 29 Gbytes | 84 Mbytes/分钟 |
附件数量 | 2,000个附件 | 8个附件/分钟 | 2,900,000个附件 | 8,100个附件/分钟 |
附件数据量 | 100 Mbytes | 560 Kbytes/分钟 | 100 Gbytes | 300 Mbytes/分钟 |
- 邮件方面的其他限制
限制 | 量 |
---|
每封邮件最大大小,包括附件 | 1 Mbyte |
管理员为收件人时每封邮件最大大小 | 16 Kbytes |
Memcache API
- GAE提供google.appengine.api.memcache访问GAE提供的Memcache服务
- Memcache方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
Memcache API调用次数 | 8,600,000次调用 | 48,000次调用/分钟 | 96,000,000次调用 | 108,000次调用/分钟 |
API调用传输数据量 | 10 Gbytes | 56 Mbytes /分钟 | 60 Gbytes | 128 Mbytes/分钟 |
API返回传输数据量 | 50 Gbytes | 284 Mbytes/分钟 | 315 Gbytes | 640 Mbytes/分钟 |
- Memcache方面的其他限制
网址抓取API
- GAE提供google.appengine.api.urlfetch进行网址抓取
- 可以使用urllib,urllib2,httplib进行HTTP请求,这些库会使用GAE的网址抓取API
- 网址抓取API支持五种HTTP方法:GET、POST、HEAD、PUT、DELETE
- 由于安全原因,代码不能修改请求头部中的Content-Length、Host、Referer、Vary、Via、X-Forwarded-For
- 网址抓取API仅限于在访问端口 80 (http) 和端口 443 (https)中进行网址抓取。不支持其他端口或网址方案。
- 网址抓取方面的配额
资源 | 免费默认配额 | 付费配额 |
---|
每日上限 | 最大速度 | 每日上限 | 最大速度 |
---|
网址抓取API调用次数 | 657,000 次调用 | 3,000次调用/分钟 | 46,000,000 次调用 | 32,000次调用/分钟 |
API调用传输数据量 | 4 Gbytes | 22 Mbytes/分钟 | 1,046 Gbytes | 740 Mbytes/分钟 |
API返回传输数据量 | 4 Gbytes | 22 Mbytes/分钟 | 1,046 Gbytes | 740 Mbytes/分钟 |
- 网址抓取方面的其他限制
限制 | 量 |
---|
请求大小 | 1 Mbyte |
响应大小 | 1 Mbyte |
用户API
- GAE提供google.appengine.api.users使用Google帐户用户
计划任务
- GAE的cron服务允许配置计划任务在指定时间或指定时间间隔运行
- 使用cron.yaml配置计划任务
- 在计划任务指定的时间,GAE会产生一个URL并进行访问,这个URL与普通URL有一样的限制和配额,包括响应请求的时间限制30秒
- 一个应用最多可以有20个计划任务
- 几个计划任务之间最小间隔为1分钟
任务队列 (开发中)
- GAE提供google.appengine.api.labs.taskqueue用于操作任务队列
- 通过任务队列,应用可以在没有用户请求的时间做事,不过任务队列依然是通过用户请求触发的。当应用需要做一些后台工作时,可以将这些工作分成小的步骤,添加到任务队列。GAE会在系统资源允许的情况下运行这些任务
- 使用queue.yaml配置任务队列,如果没有通过yaml配置,则有一个默认的队列default
- 任务队列方面的其他限制
限制 | 量 |
---|
每天添加的任务数 | 10,000 |
任务对象大小 | 10 Kbytes |
活跃队列数(不包括默认队列) | 10 |
所有队列总执行速度 | 每秒10个任务 |
爱华网本文地址 » http://www.aihuau.com/a/25101014/226100.html
更多阅读
这是部剧情不错的恐怖片劳拉在孤儿院长大,被领养走的那天,她和她的5个小伙伴还在一起玩“木头人”的游戏。 劳拉走后,另外5个孩子在和管理员的畸形儿子托马斯玩耍时,恶作剧地把托马斯一个人留在了海边的洞窟里,结果海水涨潮,托马斯
《黑天鹅》讲述了一个有关芭蕾舞的超自然惊悚故事。女主角是一个资深芭蕾舞演员(娜塔丽·波特曼饰),她发现自己被困在了与另一个舞者的竞争状态中。随着一场重大演出的日渐临近,许多的麻烦也随之加剧。并且她不确定竞争对手是一个超自然
来源:http://book.51cto.com/art/200911/163370.htm9.3 理解STPSTP(Spanning Tree Protocol,生成树协议)与上节介绍的VLAN的关系非常密切。ST