从Google AppEngine切换到另一台服务器

Mak*_*sim 8 java google-app-engine porting code-migration

目前,我建立我的Java Web应用程序在谷歌的AppEngine(GAE),但由于很多他们恐怕我将不得不从GAE切换到正在运行的Glassfish我自己的服务器限制的(或我可以根据需要设置任何其他服务器).另外我打算运行Oracle或MySql数据库.为了从GAE切换到我的服务器,我需要做什么?我需要重写我的代码吗?我应该继续使用Datanucleus还是切换到别的东西?还要别的吗?

Dat*_*eus 6

为什么不遵循原始Google篝火中提供的信息?IBM介绍了如何使用DB2运行AppEngine应用程序.他们只是删除了CLASSPATH中的datanucleus-rdbms jar,更改了连接URL等,然后运行它.就像在这篇PDF中 http://download.boulder.ibm.com/ibmdl/pub/software/dw/wes/hipods/GAE_Java_Interoperability.pdf

--Andy(DataNucleus)


Pet*_*ore 4

如果不知道您如何编写应用程序,我们将无法提供很好的建议。您是否创建了一个数据访问层来将数据存储访问与业务逻辑分开?或者您是否到处传递应用程序引擎特定的对象?您使用的是gae用户服务吗?或者内存缓存?

您应该做的第一件事是查看所有导入语句。每当您在那里看到 com.google.something 时,您就知道需要更改它。您没有详细说明如何编写应用程序,但如果您询问 datanucleus,您可能正在使用 JDO 或 JPA,这意味着您可能能够重用大部分数据层。您可能有一堆必须更改的关键字段,也许还有一些特定于 gae 的注释。您可能必须仔细检查处理事务的方式,因为 SQL 数据库中的情况可能有所不同,它不像 GAE 那样使​​用实体组。