Google应用引擎 - PersistenceManager的生命周期是什么?

时间:2010-01-31 23:02:38

标签: java google-app-engine jdo

将GAE数据存储PersistenceManager用于Web应用程序的首选方法是什么? GAE instructions在这个问题上有点含糊不清。

我是为每个RPC调用实例化PersistenceManagerFactory,还是只对所有请求使用一个工厂?我是否调用PMF.get()。getPersistenceManager(),还是调用PMF.get()。getPersistenceManagerProxy()?我是在每次RPC调用后关闭PM,还是将其保持打开状态?你们在做什么?

此外,我不确定GAE如何处理每秒请求30秒的限制。甚至可以在请求之间引用相同的PM吗?

1 个答案:

答案 0 :(得分:4)

创建PMF的成本很高,因此每个应用只有一个是有意义的。每次请求获得PM也是有道理的,因为并不昂贵。真的取决于您计划对请求之间的对象做什么,是否要分离它们,然后重新附加后续请求。

GAE / J应用程序回收显然导致新的PMF因此延迟,这是谷歌要解决的问题;在他们的论坛上有一个线程,它关注各种事物初始化的时间,我建议他们可以做些什么但是让他们把资源投入到这项工作中。

HTH