2013-02-10 38 views
4

我想禁止用戶訪問我的應用程序,以便我可以執行模式遷移。我已經研究過幾種可能性,發現可能存在的缺點:建議如何暫時禁用我的Google App Engine應用程序以便我可以執行模式遷移?

  1. 禁用數據存儲寫 - 我寧願只是把我的整個程序下來,讓人們看不到任何錯誤,等等。另外,我想禁用寫入將阻止我執行遷移。

  2. 禁用應用程序 - 我不清楚這會禁用它,只能爲我的用戶,使我無法執行遷移。我也不確定禁用/啓用週轉時間。

  3. 重定向我的域名到一個臨時網頁 - 我的應用程序仍然會在appspot.com訪問

  4. 上傳我的應用程序的新版本,並沒有一個比其他直接要求作出迴應「暫時下降「頁面。

有什麼建議嗎?

回答

2

建議4號似乎可能是這樣做的最佳方式。一些框架具有「維護模式」,其中所有傳入的請求將被重定向到指示站點由於維護而停機的頁面。如果你的框架不支持這種模式,你可以上傳你的應用程序的新版本(可能調用版本maintenance)並切換到新的默認版本。這個版本可能是一個空的應用程序,其中所有傳入的請求都轉到「維護頁面」,指示該站點因維護而關閉。然後使用遷移代碼手動轉到您的應用版本並執行它(http://<version>.<appname>.appspot.com)。完成遷移後,使用新模式將您的應用默認版本切換到新版本。

你的其他想法

  1. 禁用寫說明會阻止甚至從你的應用程序進行寫入。我相信這更適合從一個應用程序遷移到另一個應用程序或其他凍結數據存儲區的應用程序。
  2. 禁用應用程序會使應用程序完全關閉
  3. 重定向您的域會導致遷移時出現DNS滯後,這可能需要48小時才能完全傳播(切換到臨時頁面,然後切換回到新版本)
  4. 如前所述,恕我直言,這將是最好的辦法。
2

是不是可以同時使用這兩個模式,並使用您的應用程序的新版本進行遷移,只使用新的模式。通過這種方式,你總是可以回到你的舊版本。

順便說一句。因爲數據存儲是無模式的,所以我總是可以更改「模式」,而不必關閉應用程序。

相關問題