2016-02-26 73 views
1

我的项目是基于spring框架的java。我的应用程序的战争规模约为38mb。我用1 GB内存托管了我的应用程序。在某些日子里,我知道所有的内存都已经耗尽。所有内存使用情况已经耗尽java项目

然后我扩展RAM 1GB。现在单个war文件正在使用tomcat服务器处理2 GB RAM。 2-3天后,我检查2GB内存也耗尽,它显示约80%至90%的使用率。

目前,系统正在开发中,没有人使用应用程序,所有的RAM仍在使用中。

这是正常的行为还是有什么问题? 还是我需要进行任何设置?

谁能告诉我多少RAM习惯于正常的Java项目..

我的“自由-m”命令检查VPS RAM的使用,它表明 -/+缓冲区/高速缓存为557 [使用] 1444 [免费] 也是内存值是2001 [总] 1736 [使用] 265 [免费] 38 [共享] 130 [缓冲区] 1048 [缓存]

+0

应用程序需要多少内存是高度应用程序依赖。但是我有一个应用程序在两天内没有负载的情况下将需要的内存翻倍,并且您不知道原因(例如缓存可能是一个有效的原因)。那么我会说这是不正常的,我强烈建议调查这个问题(这可能是某种内存泄漏)! – Ralph

+0

@Relph:我通过'free -m'命令检查了vps ram的使用情况,它显示了 -/+ buffers/cache as 557 [used] 1444 [free]。这是什么意思? – RohanB

回答

1

在我看来,通常它需要1GB RAM的小Java应用。如果存在任何无限循环或任何调度程序永远运行,则需要查看代码。