Google App Engine从只支持Python开始,发展到今年四月开始支持Java。一路走来,也已经有了一年有余,而其发展势头也愈发的乐观。下面对Google App Engine做个简单的介绍。
Google App Engine简介:概述
Google(同时也是一些搜索引擎的创建者)于 2008 年 4 月首度发布了 Google App Engine。令许多 Java 开发人员失望的是,初始版完全只服务于 Python 程序员 — 那些认为应该大块使用空白的人!Google 响应了用户的普遍要求,于 2009 年 4 月发布了 Google App Engine for Java。
Google App Engine for Java 为企业 Java 开发提供了一个端到端解决方案:一个易于使用的基于浏览器的 Ajax GUI、Eclipse 工具支持以及后端的 Google App Engine。易于使用和工具支持是 Google App Engine for Java 优于其他云计算解决方案的两大优势。
Google App Engine简介:数据存储与接口
App Engine for Java 中的应用程序开发意味着使用 Google 的资源存储和检索 Java 对象。数据存储的基础是BigTable,但是使用的是 JDO 和 JPA 接口,这些接口允许您编写没有直接绑定到 BigTable 的代码。事实上,Google 为许多 API 提供了基于标准的支持,这样就可以编写没有全部绑定到 App Engine for Java 的代码。
App Engine for Java 依赖以下标准 Java API:
java.net.URL
,检索服务(通过使用 HTTP 和 HTTPS 协议与其他主机通信)- JavaMail,发送邮件消息
- 一个通向 Memcache 的 JCache (JSR 107) 接口,提供快速、临时的分布式存储,用于缓存查询和计算
在 App Engine for Java 发布时,来自 Google 和 IBM 的代表在 DB2/WebSphere 上部署了相同的样例应用程序。IBM 致力于为 Tivoli LDAP 和 DB2 提供低级别的 Google API 支持,这样针对 App Engine for Java 构建的应用程序也可以运行在 IBM WebSphere/DB2 堆栈上。
Google App Engine简介:应用程序服务支持
此外,App Engine for Java 为以下应用程序服务提供了支持:
- 用户身份验证和授权
- CRON
- 数据导入/导出
- 访问防火墙数据
对于将数据从其他来源移动到您的 App Engine for Java 应用程序,数据导入/导出十分重要。这也不需要绑定到 App Engine for Java。Google 的 CRON 支持基于对某个调度的内部 URL 命中率,从而使它成为不需要绑定 App Engine for Java 的出色服务。用户身份验证和授权机制是 特定于 App Engine for Java 的,但是您可以编写一个 ServletFilter
、aspect 或 Spring Security 插件,以便最小化这种紧密耦合。
【编辑推荐】