HSQL系统内存使用量增加

Posted

技术标签:

【中文标题】HSQL系统内存使用量增加【英文标题】:HSQL system memory Usage increasing 【发布时间】:2017-03-21 03:12:19 【问题描述】:

我希望有人能帮助我。

我正在使用 hsqlDB,我的问题是 系统内存(res)不断增加如下(1.6G)

  PID   USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                          
  27961 root      20   0 3973m  1.6g  11m S  2.0 10.0  30:56.44 java     

我正在使用 HSQL DB 作为服务器模式,并且 整体数据量几乎没有变化 由于进行了连续的注册和删除 使用 Spring Boot 批处理调度程序。

我像这样配置 JVM 堆大小 (-Xms1500m -Xmx1500m ) 问题是什么? 提前致谢。

.

【问题讨论】:

使用 Java VisualVM 等工具找出实际使用的内存量。 【参考方案1】:

在 HSQL 的情况下,表默认不缓存,它们保存在内存中,这可能是内存不断增加的原因之一。

您的配置应该类似于:

 jdbc:hsqldb:file:$jar.path;
 hsqldb.write_delay=false;
 hsqldb.large_data=true;
 hsqldb.default_table_type=cached;

【讨论】:

以上是关于HSQL系统内存使用量增加的主要内容,如果未能解决你的问题,请参考以下文章

HSQL 和 Hibernate - 许多删除语句上的内存不足错误

在内存数据库中嵌入 HSQL 的 Spring DataSource 和 Linux 上的休眠创建-删除排序

从另一个客户端连接到内存中的 HSQL 数据库(由 Spring 启动)

关于内存数据库中HSQL DB的问题

Linux增加虚拟内存

HSQL 列名包含 #