在谷歌应用引擎上托管角度JS / HTML 5网络应用程序?

时间:2016-01-02 18:20:29

标签: angularjs google-app-engine

我正在将谷歌应用引擎上的托管角度JS / HTML 5网络应用视为单页应用。我的所有服务也都在同一项目中的谷歌应用引擎上。

我使用yeoman生成器生成了angularJS的基本目录结构。

刚刚在app引擎项目的/ war /文件夹下创建了一个目录,并将角度代码放在其中。

一切正常!

那么问题?

  1. 这是将HTML页面直接放在App引擎的WAR文件夹中的正确方法吗?或者我应该将HTML文件放在应用引擎项目的SRC文件夹下,并在部署期间将它们拉入战争状态?

  2. 让我们说百万用户试图访问这个单页网页应用,这样的托管模式会帮助扩大规模吗? app app引擎会为此page.html创建更多实例吗?

  3. 注意:我'不'使用任何GWT用于UI。它只是一个war文件夹下的单页应用程序!

    感谢您的投入。

    Srik

1 个答案:

答案 0 :(得分:2)

  1. 我相信这完全取决于您的喜好。我将我的角度应用程序放在 / src / main / node 中,并在maven包阶段复制grunt的输出,如下所示:

    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-war-plugin</artifactId>
      <version>2.4</version>
      <configuration>
        <archiveClasses>true</archiveClasses>
        <webResources>
          <!-- in order to interpolate version from pom into appengine-web.xml -->
          <resource>
            <directory>${basedir}/src/main/webapp/WEB-INF</directory>
            <filtering>true</filtering>
            <targetPath>WEB-INF</targetPath>
          </resource>
          <resource>
            <directory>${basedir}/src/main/node/dist</directory>
            <filtering>false</filtering>
            <targetPath>/</targetPath>
          </resource>
        </webResources>
      </configuration>
    </plugin>
    

    虽然这对我来说似乎是最干净的解决方案,但您可能感觉不一样。无论你的静态内容如何进入你的战争并不重要。

  2. 没有任何实例。静态内容(如html,js,css文件)通过Google的静态内容代理提供,这是一个内容分发网络。所以是的,它会扩展,但你不需要静态内容的实例。