2010-01-31 55 views
4

使用GAE数据存储PersistenceManager for web应用程序的首选方式是什么? GAE instructions在这件事上有点含糊不清。Google app引擎 - PersistenceManager的生命周期是什么?

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

此外,我不确定GAE如何处理每秒30秒的请求限制。是否有可能在请求之间引用同一个PM?

回答

4

PMF的创建成本很高,因此每个应用程序只有一个是合理的。每个请求获得PM也是有意义的,因为它并不昂贵。真的取决于您计划如何处理请求之间的对象,无论您想分离它们,然后重新连接后续请求。

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

HTH