代码之家  ›  专栏  ›  技术社区  ›  Luky

在liferay中上载大量文档文件时,Linux服务器内存未释放

  •  1
  • Luky  · 技术社区  · 7 年前

    我有很多用户上传文件,我发现用户上传文件后内存没有释放。因此,我停止了liferay tomcat,没有其他应用程序,而内存使用率仍然很高。那么是谁花费了内存,我猜它的linux服务器缓存了文档。我能从你那里得到一些想法或建议吗?我想释放内存

    1 回复  |  直到 7 年前
        1
  •  1
  •   Olaf Kock    7 年前

    一旦Java从操作系统分配了内存,它就不会再次释放内存。这不是Liferay的特性,而是底层JVM的特性。

    首先,您可以为Liferay(或appserver)分配较少的内存,但必须确保至少分配足够的内存以处理上载(如果文档不一定同时保存在内存中)。您还可以配置缓存大小,这样Liferay就不需要从操作系统分配更多内存,而需要付出更多缓存未命中的代价。我知道有几次安装宁愿接受缓存未命中的(轻微)影响,也不愿增加总体内存需求。

    然而,由于目前内存非常便宜,许多人选择不优化这一特定方面。如果你不能升级你的硬件,可能会被要求。