获取 Amazon EC2 实例上的服务器内存使用情况



我们正在 Amazon EC2 实例服务器上运行我们的 J2EE 应用程序,该服务器是一个 m1.large 实例将配置作为

Instance Family    
Instance Type   Processor   Arch        vCPU    ECU Memory (GiB)    Instance Storage (GB)   EBS-optimized Available Network Performance
General     purpose     m1.large    64-bit  2   4   7.5 2 x 420 Yes     Moderate

现在,当我检查服务器的内存使用情况时,我发现可用内存为0,如下所示

             total       used       free     shared    buffers     cached
Mem:             7          6          0          0          0          5
-/+ buffers/cache:          1          5
Swap:            0          0          0

在服务器上调查位后,我得到了以下详细信息...

Process Name    Number of processes Memory usage per process    Total memory usage 
java            2           523.379 MB          1046.76 MB
httpd           24          3.47965 MB          83.5117 MB
memcached       1           13.7227 MB          13.7227 MB
sshd            3           2.91016 MB          8.73047 MB
rsyslogd        1           5.51953 MB          5.51953 MB
pickup          1           3.25781 MB          3.25781 MB
udevd           2           1.24805 MB          2.49609 MB
master          1           2.84375 MB          2.84375 MB
qmgr            1           2.77734 MB          2.77734 MB
crond           1           1.30078 MB          1.30078 MB
auditd          1           0.789062 MB         0.789062 MB

现在总使用量约为 1 .5 GB,我无法理解这 5.33 GB 将用于何处我如何找到有关它的详细信息,有人可以帮助我解决这个问题吗

注意:我们在同一台服务器上运行两个 tomcat 进行 QA 和生产

补丁2

雄猫版本7(两者)

Memcached : 为了更好的性能

提前感谢..

通常,内核会保留所有内存,并根据请求和需求开始分配给应用程序。 因此,所有剩余的内存都被分配了缓冲区和缓存,内核可以在任何给定时间声明这些缓冲区和缓存,以获取有关内存利用率的更多信息 cat /proc/meminfo

如上所示free命令的输出,缓存了 5 GB 的数据。这是缓存在RAM中的硬盘的一部分。Linux 将在应用程序需要时释放内存。本答案中提供了更多信息。相信linux,他知道内存管理,并且会释放缓存的空间,因为应用程序需要RAM。

相关内容

  • 没有找到相关文章

最新更新