我的项目基于spring框架java。我的应用程序的战争大小约为38mb。我在vps上托管了我的应用程序,内存为1 GB。在几天之内,我知道所有RAM都已经筋疲力尽了。
然后我将RAM扩展1GB。现在单个war文件正在使用tomcat服务器处理2 GB RAM。 2-3天后,我检查了2gb RAM也用尽了,显示出大约80%到90%的使用率。
目前,系统正在开发中,没有人使用应用程序仍然使用所有RAM。
这是正常行为还是有问题? 或者我需要进行任何设置吗?
任何人都可以告诉我正常java项目使用了多少RAM ..
我通过' free -m'检查了vps ram的使用情况。命令,显示 - / + buffers / cache为557 [used] 1444 [free] Mem值也是2001 [总] 1736 [使用] 265 [免费] 38 [共享] 130 [缓冲] 1048 [缓存]
答案 0 :(得分:1)
在我看来,通常它需要1GB RAM用于小型Java应用程序。如果有任何无限循环或任何调度程序永远在运行,您需要查看代码。
答案 1 :(得分:1)
除了无限循环外,还要检查内存泄漏以及与不发布数据库链接等资源相关的问题。请参阅社区报告的类似问题,如下所示
Why is this Java program taking up so much memory?