我很难找到关于DB4O的文档。如何控制DB4O的缓存?我认为它的连接正在消耗我们服务器的所有内存。我要设置最小的缓存配置。有人能给我推荐一些文件或者给我一些例子吗?
能帮忙的人我很高兴。
发布于 2019-06-23 17:56:47
如果您已经像@Gamlor所说的那样进行了缓存配置,那么问题可能是对象损坏了,您可以删除这个对象并整理数据库以提高性能。
发布于 2016-07-18 14:36:59
我建议你用剖析器来观察它。然后你就可以看到什么样的类占据了空间。
db4o的一个典型缺陷是“ObjectContainer”被打开了很长时间,具有很高的激活深度。然后,对象图的很大一部分保存在内存中。
一些尝试:
configuration.common().weakReferenceCollectionInterval(milli-secs);db4o多久清除一次它薄弱的引用缓存系统。如果你降低了间隔,就会清除更多的侵略性。
有一个文件级缓存。我认为这是相当低的默认。不管怎么说,这里的背景是:
Storage fileStorage = new FileStorage();
// A cache with 128 pages of 1024KB size, gives a 128KB cache
Storage cachingStorage = new CachingStorage(fileStorage,128,1024);
configuration.file().storage(cachingStorage);也许还有更多的隐藏室。我当时都不记得了。
https://stackoverflow.com/questions/37944479
复制相似问题