首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何控制DB4O的缓存?

如何控制DB4O的缓存?
EN

Stack Overflow用户
提问于 2016-06-21 12:29:24
回答 2查看 98关注 0票数 2

我很难找到关于DB4O的文档。如何控制DB4O的缓存?我认为它的连接正在消耗我们服务器的所有内存。我要设置最小的缓存配置。有人能给我推荐一些文件或者给我一些例子吗?

能帮忙的人我很高兴。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-23 17:56:47

如果您已经像@Gamlor所说的那样进行了缓存配置,那么问题可能是对象损坏了,您可以删除这个对象并整理数据库以提高性能。

票数 1
EN

Stack Overflow用户

发布于 2016-07-18 14:36:59

我建议你用剖析器来观察它。然后你就可以看到什么样的类占据了空间。

db4o的一个典型缺陷是“ObjectContainer”被打开了很长时间,具有很高的激活深度。然后,对象图的很大一部分保存在内存中。

一些尝试:

代码语言:javascript
复制
configuration.common().weakReferenceCollectionInterval(milli-secs);

db4o多久清除一次它薄弱的引用缓存系统。如果你降低了间隔,就会清除更多的侵略性。

有一个文件级缓存。我认为这是相当低的默认。不管怎么说,这里的背景是:

代码语言:javascript
复制
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);

也许还有更多的隐藏室。我当时都不记得了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37944479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档