在GAE应用程序中启用HA /高复制选项

时间:2013-04-01 10:57:20

标签: java google-app-engine maven

尝试在我的应用程序中执行Transaction时出现此错误:

transactions on multiple entity groups only allowed in High Replication applications

使用Google Plugin for Eclipse,它易于启用HA选项;但是当使用GAE maven原型运行时:mvn gae:run

不确定如何使用maven启用HA。我该如何启用它?

2 个答案:

答案 0 :(得分:0)

您需要将您的应用程序迁移到HR。

  1. 打开管理控制台,选择要复制的应用程序,然后转到“应用程序设置”。
  2. 在“新建应用程序标识符”文本框中,请注意当前应用程序的应用程序ID显示为-hrd后缀。如果您愿意,可以使用它或提供全新的应用程序ID。
  3. 单击“检查可用性”以验证您选择的应用程序ID是否可用。如有必要,请更改ID。
  4. 单击“复制应用程序”。
  5. 然后您需要使用新的应用程序标识符。您无法在不更改应用程序ID的情况下从主服务器/从服务器迁移到HR。

    https://developers.google.com/appengine/docs/adminconsole/migration

答案 1 :(得分:0)

这里有一个文档。 https://developers.google.com/appengine/docs/java/tools/devserver#Simulating_the_High_Replication_ConsistencyModel

那就是说,我不熟悉kindleit gae插件的配置。要在官方插件中启用此功能,您可以将其添加到您的pom:

  <plugin>
    <groupId>com.google.appengine</groupId>
    <artifactId>appengine-maven-plugin</artifactId>
    <version>1.7.6</version>
    <configuration>
      <jvmFlags>
        <jvmFlag>-Ddatastore.default_high_rep_job_policy_unapplied_job_pct=20</jvmFlag>
      </jvmFlags>
    </configuration>
  </plugin>