Google App Engine for Java,第 3 部分: 持久性和关系
2009-09-17 00:00:00 来源:WEB开发网App Engine for Java 力求为可伸缩的 Web 应用程序成功地编写一个持久层,可这个目标的达成情况又如何呢?在本文中,我将概述 App Engine for Java 的持久性框架,从而结束本系列文章。该框架以 Java Data Objects(JDO)和 Java Persistence API(JPA)为基础。尽管在刚刚出现时前景良好,但是 App Engine 的基于 Java 的持久性目前存在一些严重的缺陷,我将对此进行解释和演示。您将学习 App Engine for Java 持久性是如何运作以及有着哪些挑战,还将学习在使用面向 Java 开发人员的 Google 云平台时,您具有哪些持久性选择。
在阅读本文并遍览这些示例时,您要牢记这样的事实:现在的 App Engine for Java 是一个预览 版。基于 Java 的持久性目前也许并不是您所希望或者需要的全部,可能并且应该会在未来发生变化。现如今,使用 App Engine for Java 进行可伸缩的、数据密集型的 Java 应用程序开发不合适胆小者或者保守派,这就是我在撰写本文时所学到的。这更像跳入了游泳池的最深处:看不到任何救生员,项目要沉下去还是往前游,取决于您自己。
注意,本文中的示例应用程序以 第 2 部分 中开发的联系人管理应用程序为基础。您需要构建该应用程序,确保它是可运行的,这样才能继续学习本文的示例。
基础知识和抽象泄漏(leaky abstraction)
与原始的 Google App Engine 一样,App Engine for Java 依靠 Google 的内部基础设施,实现可伸缩的应用程序开发的 Big Three:分布、复制和负载均衡。由于使用的是 Google 基础设施,因此所有神奇的地方大都发生在后台,可以通过 App Engine for Java 的基于标准的 API 获得。数据存储接口是以 JDO 和 JPA 为基础的,而它们自身又是以开源的 DataNucleus 项目为基础。AppEngine for Java 还提供了一个低级别的适配器 API,用来直接处理基于 Google 的 BigTable 实现的 App Engine for Java 数据存储(要了解更多有关 BigTable 的信息,请参见 第 1 部分)。
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››APP Loading页设计和App从当前页进入新页面交互
- ››App产品开发:App产品开发与推广的经验
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Applying Styles and Themes - 应用Style和Theme ...
更多精彩
赞助商链接