Google App Engine 1.5.0 发布

  • Alex Blewitt
  • 胡伟红

2011 年 5 月 12 日

话题:Java架构DevOps语言 & 开发

Google IO 大会上,Google App Engine(以下简称 GAE)团队宣布GAE 1.5.0发布。这一版本包含了不少变动,这将增加对哪种应用可运行在该基础架构上的控制。

关键变化之一就是能够长时间运行实例。此前, 单线程请求会根据应用的负载动态自动地启动和终止;而且为待处理的数据增加了吞吐量,这不适合所有应用。新增的Backends允许长时间运行有内存和 CPU 要求的实例集。 它们可以是常驻(用于控制实例的启动和停止)或者动态的(需要时它们在线,空闲时被终止)。尽管一般情况下还是不允许使用线程, 这些后台实例可维持在内存缓存中,并通过 max-concurrent-requests 参数的设置, 一次可以为多个请求服务。

除此之外,Pull 队列可用于允许实例请求任务,而不是将任务推向单个实例。 对于那些希望享受不同计算模型优点的应用,这将是一个代码和架构级别的改动。

最后一个关键的变化是采用高复制数据存储(high replication datastore)作为默认选项, 这就减少了与选项相关的成本。

未来一年

此外,未来一年看起来挺有趣, GAE 将在今年晚些时候脱离预览版状态, 成为 Google 的官方产品,尽管还没有确切的日期。

变化之一是合并了 GAE 商务版,原先在 Google IO 2010 年大会宣布的,以供所有 GAE 用户使用。 这将导致价格结构的改变,除了新的正常运行时间的服务级别协议服务条款。仍然会提供免费应用,但有更严格的限额——然而,除了使用费用外, 缴费应用还需要每月为每个应用花费 9 美元。还有一个首要的帐户选项,它提供了每应用的统一收费(但仍收取使用费用)。

费用也需要重新调整, 从 CPU 利用率模型到一个 CPU 实例小时数。更多细节可以查看App Engine 价格页面。高复制存储和主 / 从数据存储都是每月每 G 0.24 美元。

前进,前进......

尽管 GAE 最初是为支持 Python 应用而设计的, 但它迅速成为也支持 Java 应用的多语言平台。随着 1.5.0 的发布,SDK 支持 Go成为 App Engine 的开发语言,不久就会在 1.5.0 部署中使用。可下载 Linux 和 OSX 32/64 位架构平台的包含 Go 的SDK

GAE 上的 Go 语言是整个 Go 语言的一个子集,没有unsafesyscall库,但是包括了 AppEngine 特定的 API,比如 DataStore、Blobstore 等等。

最后,SDK 指出,Go 像其他语言一样,其运行时仅支持单一 CPU 线程。所以,虽然 goroutines(Go 语言中的并行程序称为 goroutines)和信道都存在, 但只有一个单一线程会执行。公告中指出,这个限制未来可能会取消。

请看演示程序,以及源代码,还有关于 App Engine 中支持的 Go 的文档

查看英文原文: Google App Engine 1.5.0 Released

Java架构DevOps语言 & 开发