2012-09-08 60 views
0

如果測試新代碼後,我可以發佈對我的GAE應用的特定子域的更改(例如demo.my-gae-app.com而不是我的實時環境my-gae-app.com)或某個特定後端實例(如果子域禁止或不是這裏的正確解決方案)。Google App Engine類似製作環境

然後,我可以演示新的代碼改變我的beta測試,以及對現實生活中的GAE環境中運行性能測試。我知道GAE SDK附帶一個開發應用程序服務器,但它存根大部分API調用,並且不像生產環境那樣處理縮放。雖然我們絕對會將它用於開發人員的本地沙箱以及我們的QA環境,但是我覺得不適合將代碼發佈到製作環境中,而不是針對真正模仿製作的環境。

其他GAE開發人員/團隊如何處理此問題?我真的只是想要有一個預生產環境(如「演示」)......但實際上在實時GAE應用程序服務器上。當然,我需要限制對此代碼的訪問,以便只有我自己,我的開發人員,我的beta測試人員和我們的自動化性能測試才能訪問它...(這就是踢球者)。

回答

5

你可以通過你的代碼部署到非默認應用程序版本,:

  • 改變appengine-web.xml
  • 調用appcfg.sh與-V version參數
  • 在改變版本version標籤值Google Eclipse插件的部署選項

這樣做後,您可以通過訪問來訪問您的應用程序荷蘭國際集團version.appid.appspot.com

需要注意的是不同的版本可以訪問相同的應用程序數據存儲。

+0

感謝@proppy(+1) - 快速提問:我的理解*是後端實例是個別給定的子域,因此可以直接引用它們。因此'myapp.appid.appspot.com'可能有一個後端實例''cronjobs.myapp.appid.appspot.com',它可以在一整天內啓動cron作業。如果我使用'-V演示'參數,這將如何幹擾'demo.myapp.appid.adppspot.com'?顯然,我想要我的正常生產cronjob後端,但我也想要一個演示cronjob後端。再次感謝! – IAmYourFaja

+0

後端沒有版本,實際上每個後端的行爲都像一個單獨的應用程序版本。我會建議創建一個名爲'cronjobs-demo'的後端。 – proppy

1

我註冊在谷歌應用程序引擎的新應用程序,並通過在Eclipse改變項目的設置,部署測試版吧。然後使用Google的工具(請參閱Google文檔),將生產數據存儲的內容複製到新的測試版應用程序。

  • 數據存儲在只讀模式,同時提取數據
  • 與無主的關係,工作時
  • 實體按鍵可能有問題 - 沒有任何人有這方面的信息?

這爲我提供了一個完美的測試現場環境。