2010-03-24 41 views
8

我想製作一個(最初)小型Web應用程序,最終將有增長潛力的。所有被視爲Google App Engine的東西看起來都是非常有吸引力的選擇。比如說,用戶羣和複雜性都在增長,出於某種原因,我需要離開GAE。遷移有多難?難的是如何從谷歌應用程序引擎遷移出來?

1)是否GAE提供一種方式來導出數據庫?它是什麼格式?難以把它放在MySQL(或類似的)下面嗎?

2)在哪些領域(例如,數據庫訪問,其他人呢?)我將不得不使用GAE的API?即哪些部分的實現將不得不被抽象/接口?

編輯:3)另外,是它甚至值得抽象掉GAE的API?

+0

爲了記錄在案,我不認爲它是太難寫你自己的DB出口... – 2010-03-24 04:05:48

+0

這裏有你需要更具體的許多決策點。 其中谷歌應用程序引擎的味道你指的是 - Python或Java的?如果Java,您使用的是哪種數據庫API - JDO - JPA - BigTables本地? – Stevko 2010-03-24 21:30:54

回答

4

對於問題1:我不知道,如果GAE專門支持數據庫的出口,但你總是可以推出自己的,最糟糕的情況。如果你處於你需要的位置,你也可能有資源去做。

對於問題2:你可以和應該總是封裝這些類型的外部依賴性的反正。它們是否提供接口並不重要。與這些接口的耦合應該保持在絕對最小值。

對於問題#3:這個問題是不是真的超清晰,所以我不能回答這個問題。

2

我嚴格從一個Java的web應用角度上來講......

谷歌應用程序引擎Python有一個備份/恢復工具: http://code.google.com/appengine/articles/gae_backup_and_restore.html

有一個巨大的興趣移植這java的味道。

可以使用更高級別的標準數據庫API(JDO/JPS),讓你移動你的應用程序從谷歌的數據庫服務了。我建議購買數據核工具以平滑從大型表到類似mysql或oracle的過渡。

的打包服務GAE提供在 http://code.google.com/appengine/docs/java/javadoc/

列舉的股票JRE應該處理的網址抓取,郵件和內存緩存API包的移植。 你必須找到一種替代技術,對於用戶來說,Blob存儲區,XMPP和任務隊列包。