- 浏览: 14343 次
最新评论
[原创]Google App Engine使用简介
2010年08月28日
[原创]Google App Engine使用简介
by AKara 2010-08-28 @ http://blog.csdn.net/akara @ akaras@163.com
-------------------------------------------------- -------------------
在用Google App Engine之前,了解了其他一些现存的可称作云计算的平台:
> Force.com(http://www.force.com)
SaleForce.com推出的云计算服务平台。
> Amazon Cloud(http://aws.amazon.com)
S3(Amazon Simple Storage Service) 可伸缩的存储服务。
EC2(Amazon Elastic Compute Cloud) 云计算服务。
> Google App Engine(https://appengine.google.com)
Google的巨大虚拟机。
> Sina App Engine(http://sae.sina.com.cn)
国内新浪公司的平台。
在免费/Google/Python API等面前;无需挣扎,选了Google App Engine。
花去一些时间,做些记录。
-------------------------------------------------- -------------------
* Google App Engine底下的基础设施:
> Bigtable + GFS
> Map / Reduce
> Google Protocol Buffer
> Google Data Protocol
-------------------------------------------------- -------------------
* Google App Engine特色:
> 文档齐全。
> 本身就是开源项目:http://code.google.com/p/googleappengine。
> 提供sandbox(NO thread, file, socket …)环境下的Python(2.5.2)和Java两种App API形式。
> 通过简单直观的YAML配置方式来实现几大功能的定制:
app.yaml(主配置)
index.yaml(GQL索引配置)
cron.yaml(定时任务配置)
queue.yaml(后台任务配置)
dos.yaml(DoS保护配置)
> ORM(Object-Relation Mapping)对象关系映射技术隐藏了分布式数据库的复杂度。
> 类似SQL的GQL为关系数据库的转型使用者提供便利。
> 支持Django1.0,为WEB制作提供便利(模板引擎等...)。
> Google Protocol Buffer在所有服务的沟通接入中扮演着一个万能的中介者角色。
> 提供Development server在脱机环境下模拟App Engine的数据存储,沙盒限制等。
可以方便地在http://localhost:port上调试自己的App。
> 提供多项目成员管理功能。方便共同开发项目。
-------------------------------------------------- -------------------
* Google App Engine SDK可用API组件:
> Datastore(数据存储)
高可靠,可伸缩的分布式数据存储服务。
联想服务:Bigtable + GFS
> Images(图像)
提供对图像格式的各种操作。
联想服务:Picasa
> Mail(邮件)
收发邮件。
联想服务:GMail
> Memcache(Memcache)
顾名思义。
> OAuth(开放授权)
提供第三方认证。
> URLFetch(URL抓取)
从App中方便地对网络资源进行抓取和处理。
> Users(用户资料)
对Google Account等用户资料的认证和资料提取。
联想服务:Google Accounts
> XMPP(即时消息)
收发XMPP兼容的即时消息。
联想服务:Google Talk
并宣称年内的更新将支持更多的Google Services组件接入。
还可结合Google Data APIs(http://code.google.com/apis/gdata/)
(Python Client Library:http://code.google.com/p/gdata-python-client/)
来操纵以下信誉度极高的服务群(几乎涵盖所有的Google产品):
Blogger, Calendar, Health, Picasa Web Albums, Spreadsheets, YouTube...
-------------------------------------------------- -------------------
* Google App Engine的免费配额和付费配额制度:
相比于其它PaaS。Google App Engine通过免费额度的设定来吸引潜在的
应用开发者参与其中。当资源需求超过限额,可通过较合理的价钱来提高。
对于大众开发者,就把自己的App当作运行在一个500M存储空间,500w PV/月
的受限虚拟机上吧。
-------------------------------------------------- -------------------
* 里程碑和趋势
2008-04-08 Limited Preview 版本只完成基础功能(基础web功能,
基于Bigtable和GFS的查询/排序/事务接口,自动负载均衡,
账户认证和邮件发送,脱机模拟的开发环境),
并限制10000名开发者申请使用资格,目的是获得反馈。
2008-05-15 申请资格名额扩展到75000。
2008-05-28 不限申请名额,任何人可以使用GAE。
开始作超额资源的收费设计。
添加图像处理和Memcache两套新的API接口到GAE。
2008-07-24 每账户从3个项目扩充到10个项目(PS:至今也是10)。
添加Log Export功能。
2008-08-22 Datastore接口更新。批量删写。
2008-09-16 添加zipimport/zipserve,为WEB的静态资源文件的zip读取服务。
添加memcache viewer。修正bug。
2008-10-14 新的Admin Console。
2008-10-16 appspot.com支持HTTPS访问的app.yaml配置。
2008-12-16 系统状态仪表盘,配额信息页面,付费配额信息预览
2009-02-12 优化CPU / 最长响应时间 / 提高code file,static file,
request/respones到10M体积。
2009-02-24 正式推出付费配额服务。
2009-04-07 推出Java的API系列,掀起GAE关注小高潮。Eclipse环境集成。
CronJob支持,Database import,Secure Data Connector。
2009-06-18 增加任务队列,异步URL抓取,Django 1.0支持。
2009-09-03 增加XMPP支持。完善Java API。新的Windows App Engine Launcher。
2009-10-13 可从App中收邮件。支持删除废弃的App。更详细的Datastore状态查看。
2009-12-14 支持更大的数据上传。
2010-02-10 Datastore优化。
* 最近大约半年的预期新功能release:
> SSL for third-party domains
> Background servers capable of running for longer than 30s
> Ability to reserve instances to reduce application loading overhead
> Ability to select different availability vs. latency options for Datastore
> Support for mapping operations across datasets
> Datastore dump and restore facility
> Raise request/response size limits for some APIs
> Improved monitoring and alerting of application serving
> Support for Browser Push (Comet) communication
> Built-in support for OAuth & OpenID
可以看到,两年多时间内。看似不多的功能被逐渐增添上去。
而release间隔从1个月,2个月,3个月,到现在的半年。
更多的是添加新服务而不是改动已release内容,非常稳重。
而Google Trends上的热点轨迹则显示两年多来它的一个逐渐平缓中稍带走强的趋势:
关键的几个关注度峰值点上的原因值得注意。
-------------------------------------------------- -------------------
最后,按个人理解。
像Google App Engine这样的PaaS(Platform as a Service)产品,意义有三:
* App积累非技术资源到Platform
* Platform将非技术资源分享给App
* Platform为提供成熟的基础设施给App
试着自问自答几个问题:
Q: 平台价值是什么?
A: 链接原有的看似零散服务,为公司和目标用户创造更多的价值,
实现一个价值多向交叉,共同繁荣的局面。
自私地说,让更多智慧汇聚在平台,而不是走向分庭抗礼。
Q: 目标用户是什么人群?
A: 充满活力和未知数的第三方开发团队。
Q: 基本服务是什么?
A: 成熟的云计算服务;让应用构架在超级虚拟机上,更专注于应用业务本身。
Q: 扩展服务是什么?
A:所有现有或将有的'零散'服务可以通过某形式接入Google App Engine。
Q: 用户可自由发挥的是什么?
A:创意。在一个尚算宽松的环境下的任何创意。
Q:用户受限制的是什么?
A:受限于GAE SDK本身。
受限于应用由于规模需求而索取的资源量。
Q:App制作和运行优势是什么?
A:简易,开放,自由,受限,独立,隔离,公平。
-------------------------------------------------- -------------------
发表评论
-
来自同行朋友的book list
2012-01-20 09:49 602来自同行朋友的book list 2011年04月24日 ... -
Linux + opencv(1.X 和2.0)
2012-01-20 09:49 1441Linux + opencv(1.X 和2.0) 2010年 ... -
使用Gnu gprof进行Linux平台下的程序分析
2012-01-20 09:49 869使用Gnu gprof进行Linux平台下的程序分析 201 ... -
SIP和Media帮助文档【译】
2012-01-20 09:49 1064SIP和Media帮助文档【译 ... -
如何加强幼儿园安全管理
2012-01-19 14:55 665如何加强幼儿园安全管 ... -
3年后广东入园贵入园难基本解决 因地制宜制订各地幼儿园收费标准
2012-01-19 14:54 5993年后广东入园贵入园难基本解决 因地制宜制订各地幼儿园收费标准 ... -
园长联谊会发言稿
2012-01-19 14:54 682园长联谊会发言稿 2011年12月19日 园长联谊会发言 ... -
幼儿园园长以及教师的职责
2012-01-19 14:54 635幼儿园园长以及教师的职责 2010年07月25日 幼儿园 ... -
马湖乡中心幼稚园教师奖惩制度
2012-01-19 14:54 655马湖乡中心幼稚园教师奖惩制度 2011年06月17日 ... -
Opengl:显示中文改进版
2012-01-17 04:38 609Opengl:显示中文改进版 2010年07月09日 由 ... -
转载:OpenGL显示文字
2012-01-17 04:38 616转载:OpenGL显示文字 2010年07月03日 本课 ... -
想成为编程高手,从基础做起 .
2012-01-17 04:37 577想成为编程高手,从基础做起 . 2011年10月18日 ... -
DOS的命令
2012-01-17 04:37 653DOS的命令 2011年04月23日 先介绍一下通配符的 ... -
Flash Media Server 入门
2012-01-16 03:31 649Flash Media Server 入门 2009年12月 ... -
转20.1.2 嗨!Flash Communication Remoting for .net
2012-01-16 03:31 607转20.1.2 嗨!Flash Communication R ... -
FMS视频聊天室的开发
2012-01-16 03:31 1242FMS视频聊天室的开发 20 ... -
Flash Communication Server
2012-01-16 03:31 628Flash Communication Server 200 ... -
fms的目录结构【转】
2012-01-16 03:31 801fms的目录结构【转】 20 ...
相关推荐
This practical guide shows intermediate and advanced web and mobile app developers how to build highly scalable Java applications in the cloud with Google App Engine. The flagship of Google's Cloud ...
A good book to learn Google App Engine.
在搭建WebRTC(AppRTC)时,我们会遇到需要部署Google App Engine的难题,并且最近墙的厉害,所以我特地把我珍藏的Google App Engine 最新版(2020-7-5)分享出来,希望可以方便想搭建WebRTC(AppRTC)的同学们
Google App Engine Documentation
clock.rar 这是我今天做的一个基于google app engine写的一个在该平台上开发app的示例,通过该示例的学习,我们可以很快上手学会怎样在GAE上开发属于你的应用程序了,希望对大家有用!
云应用开发——Google App Engine & Google Web Toolkit入门指南 Google App Engine入门 Google App Engine 开发人员指南
Google App Engine文档
云端代码Google App Engine编程指南 人民邮电出版社 高清带书签
Eclipse Google 插件 Google App Engine SDK for Java Google App Engine文档 按钮 Google App Engine 开发包
Google App Engine is a web application hosting service. By “web application,” we mean an application or service accessed over the Web, usually with a web browser: storefronts with shopping carts, ...
Using Google App Engine
Google云端的一个重要部分,主要介绍了Google中App Engine的限制。
Google App Engine 入门教程 eclipse插件 详情请参考我的博客
Google App Engine 入门
Google App Engine is a key component of the Google Cloud Platform and one of the most comprehensive cloud services. Together with Python, the first programming language ever supported by the platform,...
Google App Engine for Java 中文指南,Google App Engine for Java 中文指南
google app Engine for java中文api,
google app engine开发实例,实现了GAE的插入,更改,删除,搜索功能
appengine-java-sdk-1.3.1 GoogleApp开发的SDK(Java版)