java-Google App Engine上的Datanucleus / JDO 2级缓存
作者:互联网
是否可以(并且有意义)为Google App Engine数据存储区使用JDO 2级缓存?
首先,为什么Google的页面上没有关于此的文档?有什么问题吗?我们是否需要设置限制以保护我们的内存缓存配额?
根据DataNucleus on Stackoverflow,您可以设置以下持久性属性:
datanucleus.cache.level2.type=javax.cache
datanucleus.cache.level2.cacheName={cache name}
这就是全部?我们可以选择任何缓存名称吗?
Internet上的Other sources报告使用不同的设置.
另外,似乎我们需要下载DataNucleus Cache support plugin.哪个版本合适?并且我们只是将其放置在WEB-INF / lib中还是需要更多设置才能激活它?
解决方法:
在弄清楚这一点之前,您必须回答一个问题:
您正在使用哪个版本的DataNucleus?
这篇文章中的所有内容都与旧版本的插件-v1有关.直到最近,Google插件Eclipse才支持AppEngine的DataNucleus插件的v2版本(基本上是AppEngine和DataNucleus Core之间的管道).
我建议您将AppEngine的Datanucleus插件升级到v2-如果您使用的是Eclipse,这很容易-有一个UI供您选择v1或v2.只需转到您的项目属性,找到App Engine设置,然后查找“ Datanucleus JDO / JPA版本”.
另外,您必须对jdo-config.xml进行更改.具体来说,您只需要更改一个属性:
<property name="javax.jdo.PersistenceManagerFactoryClass" value="org.datanucleus.api.jdo.JDOPersistenceManagerFactory"/>
因此-升级到v2后,这就是您指定缓存(jdoconfig.xml的补充)的方式:
<property name="datanucleus.cache.level2.type" value="jcache"/>
<property name="datanucleus.cache.level2.cacheName" value="NameItWhateverYouWant"/>
此时,每次使用PersistenceManager放置和获取缓存时,缓存应自动发生.万岁!
标签:jdo,caching,google-app-engine,datanucleus,java 来源: https://codeday.me/bug/20191106/2001925.html